Ruby on Rails
Tuesday, March 10, 2020
On Monday, March 2, 2020 at 7:47:37 AM UTC-5, Walter Lee Davis wrote:
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 <fuge...@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 rubyonra...@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
Ok thanks And what about passing some params to build?
@post = current_user.posts.buil(artist_id: @artist.id, tour_id: @tour.id)
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/2fe822d3-bcff-4b54-8f8e-f7893a9733fa%40googlegroups.com.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment