我正在尝试获取已登录用户的user_id。因此,用户将创建博客帖子,并在创建博客帖子时捕获用户的ID。
我知道如何使用嵌套资源执行此操作,但在创建没有嵌套资源的新博客文章时如何获取user_id?
路线看起来像这样
resources :blogs
我还尝试将隐藏字段添加到博客表单_blog.html.erb
<%= f.hidden_field :site_id, :value => @blog.site_id %>
正确设置关联我只是想看看如何在没有嵌套资源的情况下获取user_id。有什么建议?
答案 0 :(得分:3)
在BlogsController #create方法中将当前登录用户的用户ID拉出。
示例(请注意,您访问user_id的方式取决于您如何进行身份验证)
class BlogsController < ApplicationController
def create
@blog = Blog.new params[:blog]
@blog.user_id = current_user.id
if @blog.save
...
end
end
end
答案 1 :(得分:1)
如果您使用devise / authlogic进行身份验证,那么您可以使用提供的current_user
方法轻松获取user_id