我有以下表格:
<%=form_for [:project, @permission], :url => { :action => "update" } do |f| %>
<% roles = Role.all %>
Role: <%= f.collection_select :role_id, roles, :id, :name, :prompt => true %>
<%=f.submit "Send Request" %>
<%=f.hidden_field :user_id %>
<% end %>
在我的控制器中我有:
def update
@permission = Permission.find_by_user_id(params[:user_id])
.
.
.
端
**我想要做的是更新role_id ,,,所以我需要上面的内容来查找权限记录...问题是,,, params [:user_id]是否会返回null?
我错过了什么吗?感谢
更新
这是错误和请求参数,它显示了vars在哪里?
于2010年10月14日星期四12:17:12 -0700开始发布“/ projects / 3 / permissions / useronproject”for 127.0.0.1 由PermissionsController处理#update为HTML 参数:{“commit”=&gt;“发送请求”,“authenticity_token”=&gt;“KJ2C20MzTJ8VQV0NiNzOr357QKV5hWjeuazOBcS5iPU =”,“utf8”=&gt;“✓”,“id”=&gt;“useronproject”,“permission”=&gt; ; {“role_id”=&gt;“1”,“user_id”=&gt;“11”},“project_id”=&gt;“3”}
用户加载(0.3ms)SELECT“users”。* FROM“users”WHERE(“users”。“id”= 1)LIMIT 1
权限加载(0.1ms)SELECT“permissions”。* FROM“permissions”WHERE(“permissions”。“user_id”IS NULL)LIMIT 1
看 - user_id是NULL?
答案 0 :(得分:2)
user_id
进一步低于params哈希。尝试:
params[:permission][:user_id]