· 7 years ago · Nov 09, 2018, 04:18 PM
1echo $this->Form->hidden("products.{$i}.id", ['value' => $Product->id]);
2echo $this->Form->hidden("products.{$i}._joinData.product_id", ['value' => $Product->id]);
3echo $this->Form->hidden("products.{$i}._joinData.target_id", ['value' => $Element->id]);
4echo $this->Form->number("products.{$i}._joinData.points")
5
6echo $this->Form->number("products.{$i}.options.{$j}._joinData.points");
7
8CREATE TABLE IF NOT EXISTS `mg`.`targets` (
9 `id` INT NOT NULL AUTO_INCREMENT,
10 `status_id` INT NOT NULL DEFAULT 1
11 PRIMARY KEY (`id`),
12 CONSTRAINT `fk_targets_1`
13 FOREIGN KEY (`status_id`)
14 REFERENCES `mg`.`statuses` (`id`)
15 ON DELETE CASCADE
16 ON UPDATE CASCADE)
17ENGINE = InnoDB;
18
19CREATE TABLE IF NOT EXISTS `mg`.`products_targets` (
20 `id` INT NOT NULL AUTO_INCREMENT,
21 `product_id` INT NOT NULL,
22 `target_id` INT NOT NULL,
23 `points` DOUBLE NOT NULL DEFAULT 0
24 PRIMARY KEY (`id`),
25 CONSTRAINT `fk_products_targets_1`
26 FOREIGN KEY (`product_id`)
27 REFERENCES `mg`.`products` (`id`)
28 ON DELETE CASCADE
29 ON UPDATE CASCADE,
30 CONSTRAINT `fk_products_targets_2`
31 FOREIGN KEY (`target_id`)
32 REFERENCES `mg`.`targets` (`id`)
33 ON DELETE CASCADE
34 ON UPDATE CASCADE)
35ENGINE = InnoDB;
36
37CREATE TABLE IF NOT EXISTS `mg`.`products` (
38 `id` INT NOT NULL AUTO_INCREMENT,
39 `status_id` INT NOT NULL DEFAULT 1,
40 `offer_id` INT NOT NULL,
41 `technology_id` INT NOT NULL,
42 `typology_id` INT NOT NULL
43 PRIMARY KEY (`id`),
44 CONSTRAINT `fk_products_1`
45 FOREIGN KEY (`status_id`)
46 REFERENCES `mg`.`statuses` (`id`)
47 ON DELETE CASCADE
48 ON UPDATE CASCADE,
49 CONSTRAINT `fk_products_2`
50 FOREIGN KEY (`offer_id`)
51 REFERENCES `mg`.`offers` (`id`)
52 ON DELETE CASCADE
53 ON UPDATE CASCADE,
54 CONSTRAINT `fk_products_3`
55 FOREIGN KEY (`technology_id`)
56 REFERENCES `mg`.`technologies` (`id`)
57 ON DELETE CASCADE
58 ON UPDATE CASCADE,
59 CONSTRAINT `fk_products_4`
60 FOREIGN KEY (`typology_id`)
61 REFERENCES `mg`.`typologies` (`id`)
62 ON DELETE CASCADE
63 ON UPDATE CASCADE)
64ENGINE = InnoDB;
65
66CREATE TABLE IF NOT EXISTS `mg`.`options_products` (
67 `id` INT NOT NULL AUTO_INCREMENT,
68 `option_id` INT NOT NULL,
69 `product_id` INT NOT NULL
70 PRIMARY KEY (`id`),
71 CONSTRAINT `fk_options_products_1`
72 FOREIGN KEY (`option_id`)
73 REFERENCES `mg`.`options` (`id`)
74 ON DELETE CASCADE
75 ON UPDATE CASCADE,
76 CONSTRAINT `fk_options_products_2`
77 FOREIGN KEY (`product_id`)
78 REFERENCES `mg`.`products` (`id`)
79 ON DELETE CASCADE
80 ON UPDATE CASCADE)
81ENGINE = InnoDB;
82
83CREATE TABLE IF NOT EXISTS `mg`.`options_products_products_targets` (
84 `id` INT NOT NULL AUTO_INCREMENT,
85 `options_product_id` INT NOT NULL,
86 `products_target_id` INT NOT NULL,
87 `points` DOUBLE NOT NULL DEFAULT 0
88 PRIMARY KEY (`id`),
89 CONSTRAINT `fk_options_products_products_targets_1`
90 FOREIGN KEY (`options_product_id`)
91 REFERENCES `mg`.`options_products` (`id`)
92 ON DELETE CASCADE
93 ON UPDATE CASCADE,
94 CONSTRAINT `fk_options_products_products_targets_2`
95 FOREIGN KEY (`products_target_id`)
96 REFERENCES `mg`.`products_targets` (`id`)
97 ON DELETE CASCADE
98 ON UPDATE CASCADE)
99ENGINE = InnoDB;