HasOne relationship not updating foreignKey in parent model
Hi there, I have two models,
Project
& ProjectAttachment
. The relation in Project
model is:
and in ProjectResource
class, I am using
Although I was very confident it will work, this is only adding rows in ProjectAttachment
table and not updating the attachment_id
in Project
table when submitting a create record request, resulting into empty columns in Attachment
section above. But if I add attachment_id
manually in database, it would fill up the columns in Attachment
.
Can someone please help with if I missed anything?Solution:Jump to solution
You are right, Thanks you fixed the issue, I am sorry that the parameters had me confused. In
hasOne
relationship, foreign_key
is actually supposed to be parent's id column in child entity, which in my case would be project_id
(or no need to mention as you said). I thought I would only need the project_id
column in belongsTo
relation because it would save me a column. Now I removed attachment_id
because its no longer in use.4 Replies
this isnt what they are asking for?
I know, was changing my comment 🥲
i might be wrong, but are you sure your foreignKey and localKey definitions are the right way round?
isnt the foreign key supposed to be the non-primary key, so attachment_id?
and i dont think you need to define the local key
Solution
You are right, Thanks you fixed the issue, I am sorry that the parameters had me confused. In
hasOne
relationship, foreign_key
is actually supposed to be parent's id column in child entity, which in my case would be project_id
(or no need to mention as you said). I thought I would only need the project_id
column in belongsTo
relation because it would save me a column. Now I removed attachment_id
because its no longer in use.