In your Controller's #new and #create methods, scope the post to be owned by the current_user (or whatever other scheme you may be using for your logged-in-user management).
def new
@post = current_user.posts.build
end
def create
@post = current_user.posts.create(post_params)
...
end
Now your relationship will take care of getting the correct user in there automatically, whether it's in-memory or in persistence.
NB: If this doesn't appear to work, then you haven't built your relationships correctly, and you need to fix that before proceeding.
Walter
> On Mar 2, 2020, at 12:59 AM, fugee ohu <fugee279@gmail.com> wrote:
>
> How do i add user_id to a new record without placing it in a form as a hidden field? I tried adding in the controller's create action just before `if @post.save?` but that didn't cause new records created to have a value for user_id Maybe it was because I'm using a nested form and this record is a child record
>
> --
> You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/3903125c-1f66-4ed3-89dd-b73620d797f2%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/48BB2E5C-C543-4ACA-BA4F-CB474CB9256A%40wdstudio.com.
No comments:
Post a Comment