如何从关联rails获取Id值

时间:2013-07-18 14:08:40

标签: ruby-on-rails

此时我需要从关联中获取和id值 因为我创建了一个新笔记,但是我可以将这个笔记分配给我想要的任何人,然后我就这样了

<%= f.association :user,
        :label      => false,
        :selected   => current_user.id,
        :required   => true,
        :input_html => {
            :class      => 'span4', 
            :disabled   => true, 
            :style      => "float:right", 
            :id         => "usuario"} %>

控制器创建方法就是这样

 def create
    @note = Note.new(note_params)
    @note.user_id = params[:user]
    render :action => :new unless @note.save
end

但是当我按下提交按钮时,除非列的值为:user_id

,否则一切都会保存

我尝试使用params [:user_id],但它不起作用

感谢您的帮助,对不起我的英语

1 个答案:

答案 0 :(得分:1)

首先,您需要从字段中删除属性disabled,您的表单不会显示已禁用的字段(请查看Disabled form fields not submitting data)。

并且,您的user_id应该放在params[:note][:user_id]之类的内容中,看一下服务器日志并在向服务器发送POST后立即搜索user_id,有类似的内容:

Started POST "/note" for ::1 at 2013-07-18 15:22:34 +0000
Processing by NoteController#create as */*
  Parameters: {"note"=>{..., "user_id"=>"1", ...}}