# |
Sep 30th 2016, 17:42 |
inoas |
e.g. buildRules |
# |
Sep 30th 2016, 17:42 |
inoas |
in general I think you can do complex rules within... well rules |
# |
Sep 30th 2016, 17:41 |
inoas |
but maybe that helps |
# |
Sep 30th 2016, 17:41 |
inoas |
I have no clue about STI and CTI |
# |
Sep 30th 2016, 17:41 |
inoas |
question is why you want to do that ;) |
# |
Sep 30th 2016, 17:41 |
inoas |
if you insert the keys manually it should |
# |
Sep 30th 2016, 17:41 |
inoas |
maybe in one atomic update |
# |
Sep 30th 2016, 17:41 |
inoas |
not sure if it works with auto increment |
# |
Sep 30th 2016, 17:40 |
inoas |
but if you do foreign key enforcement by the database |
# |
Sep 30th 2016, 17:40 |
wouter0100 |
I want to abstract the subscription from the Product1 and Product2 tables, because I'm going to create much more products. |
# |
Sep 30th 2016, 17:40 |
inoas |
you simply put the foreign keys in both tables |
# |
Sep 30th 2016, 17:40 |
inoas |
Well you can do A hasOne B + B hasOne A |
# |
Sep 30th 2016, 17:39 |
wouter0100 |
I've currently stored the product type (eg. Product1 or Product2) together with it's ID in the subscription, but I don't know how to set this up in Cake so it's able to understand the relation. |
# |
Sep 30th 2016, 17:38 |
wouter0100 |
Yeah, something like that! And Product1 hasOne Subscription. |
# |
Sep 30th 2016, 17:38 |
inoas |
Subscription HasToHave(Product1 XOR Product2)? |
# |
Sep 30th 2016, 17:38 |
inoas |
you want to be xor? |
# |
Sep 30th 2016, 17:37 |
inoas |
don't really understand the hasOne question |
# |
Sep 30th 2016, 17:37 |
inoas |
documents(id, revision_id), elements(id, revision_id) documents BTM elements ON document_id, document_revision_id, element_id |
# |
Sep 30th 2016, 17:37 |
wouter0100 |
Is there any way to create 2 hasOne's to eachother, but 1 could be to another table? For example, a Subscription has one Product1 or Product2. And Product1 has one Subscription and Product2 has one Subscription? How to implement this the right way? |
# |
Sep 30th 2016, 17:36 |
inoas |
We could use in an asymmetrical BTM assoc |
# |
Sep 30th 2016, 17:35 |
inoas |
Question: Would targetBindingKey for belongsToMany be a good idea? |
# |
Sep 30th 2016, 17:35 |
inoas |
today we learned alot about crud and the orm in our office - cause we had to ;) |
# |
Sep 30th 2016, 17:34 |
inoas |
I really don't like for instance the cakephp time stuff having traits mixing static and non static, maybe even abstract and non abstract functions |
# |
Sep 30th 2016, 17:34 |
inoas |
I'd just be careful with traits |
# |
Sep 30th 2016, 17:34 |
inoas |
even then you can create classes instead of traits @ attaching them... but only via the callbacks basically |
# |
Sep 30th 2016, 17:33 |
watermark |
thanks for the input |
# |
Sep 30th 2016, 17:33 |
inoas |
but behaviors come with loading multiple files |
# |
Sep 30th 2016, 17:33 |
inoas |
well I don't really know tbh |
# |
Sep 30th 2016, 17:33 |
hmic |
and if you need/want to attach them to very different kind of classes too (like a controller *and* a table, think of configtrait or logtrait) |
# |
Sep 30th 2016, 17:33 |
inoas |
yes traits are faster |
# |
Sep 30th 2016, 17:33 |
watermark |
I assumed traits would be faster and didn't see any reason to favor a behavior (in most cases) |
# |
Sep 30th 2016, 17:32 |
inoas |
share a function across two classes that already inherit from different classes etc |
# |
Sep 30th 2016, 17:32 |
hmic |
as mixins, like inoas said, they are good too |
# |
Sep 30th 2016, 17:32 |
hmic |
so for very simple things, it might be a trait |
# |
Sep 30th 2016, 17:32 |
inoas |
I like to use them when I want multiple inheritance |
# |
Sep 30th 2016, 17:32 |
hmic |
watermark, traits are "smaller" usually. less overhead |
# |
Sep 30th 2016, 17:32 |
inoas |
personally i have to say, omit traits whereever possible |
# |
Sep 30th 2016, 17:31 |
watermark |
Opinion time. When either a trait or behavior will work, should I always favor using a trait? |
# |
Sep 30th 2016, 16:44 |
ndm |
http://book.cakephp.org/3.0/en/orm/associations.html#belongstomany-associations (see `saveStrategy`) |
# |
Sep 30th 2016, 16:43 |
ndm |
http://book.cakephp.org/3.0/en/orm/saving-data.html#unlink-many-to-many-records |
# |
Sep 30th 2016, 16:43 |
ndm |
@str use the associations `ulink()` method, or the save replace save strategy and set the property to an empty array |