Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 未知属性';成绩';寻求反馈_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 未知属性';成绩';寻求反馈

Ruby on rails 未知属性';成绩';寻求反馈,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有以下错误: “赞扬“成绩工作”以获得反馈。” 链接中是rails控制台的屏幕,发送的参数包括: "{" feedback "=> {" anotations "=>" Holiiii "," score "=>" 12 " 1 "," user "=>" # <User: 0x007f4674123f38> "}}" 反馈控制器: def create @feedback = Feedback.new(feedback_params)

我有以下错误:

“赞扬“成绩工作”以获得反馈。”

链接中是rails控制台的屏幕,发送的参数包括:

"{" feedback "=> {" anotations "=>" Holiiii "," score "=>" 12 " 1 "," user "=>" # <User: 0x007f4674123f38> "}}"
反馈控制器:

def create
     @feedback = Feedback.new(feedback_params)
    respond_to do |format|
      if @feedback.save!
        format.html { redirect_to @feedback, notice: 'Feedback was successfully created.' }
        format.json { render :show, status: :created, location: @feedback }
      else
        format.html { render :new, notice: 'Feedback was not created.' }
        format.json { render json: @feedback.errors, status: :unprocessable_entity }
      end
    end
  end   

def feedback_params
      params.require(:feedback).permit(:anotations, :score, :gradework, :user)
    end
视图:


科门塔里奥:


分数:
特西斯: “Ninguno”,类:“表单控制”,名称:“反馈[成绩]”)%>

阿格雷戈

我不知道怎么了

您应该有两件事来创建成绩工作条目以及您视图中的反馈条目:

  • 属于
    反馈
    模型中的成绩工作
  • 表单中的名称应为
    feedback[gradework\u attributes]
    ,而不是
    feedback[gradework]

  • 问题似乎在这里:

    <%= select_tag(:gradework, options_from_collection_for_select(@grad_jury ,:id, :name), :prompt => "Ninguno", class: "form-control", name: "feedback[gradework]") %>
    

    这将把
    gradework\u id
    作为参数发送,无论在
    select

    中选择了什么值,请尝试设置
    gradework
    而不是视图中的
    gradework\u id
    。您可以共享您的视图吗(
    new.html.erb
    )?现在添加视图,这是查询“def self.users\u gradework(id)joins(:users)。选择(“gradeworks.id,gradeworks.name,gradeworks.description”)。其中({users:{id:id})end“关系是”has_和_属于_many:gradeworks当我更改关系时,我得到以下错误“预期成绩(#699702355955560),获得字符串(#15868000)”。按成绩id更改成绩,但错误仍在继续。@SebastianMoralesGarzón在错误屏幕中,您现在在参数方面得到了什么:?如果是这样,还有一个细节,非常感谢
    def create
         @feedback = Feedback.new(feedback_params)
        respond_to do |format|
          if @feedback.save!
            format.html { redirect_to @feedback, notice: 'Feedback was successfully created.' }
            format.json { render :show, status: :created, location: @feedback }
          else
            format.html { render :new, notice: 'Feedback was not created.' }
            format.json { render json: @feedback.errors, status: :unprocessable_entity }
          end
        end
      end   
    
    def feedback_params
          params.require(:feedback).permit(:anotations, :score, :gradework, :user)
        end
    
    <form role="form" id="newForm" action="/feedbacks" method="post">
    
          <div class="form-group">        
              Comentario:<br>
              <textarea  type="text" rows="5" class="form-control"
                 id="inputAnotations" placeholder="Ingrese su comentario"                                                    name="feedback[anotations]" required></textarea>
            <br><br>
          </div>
          <div class="form-group">
                    Score:<br>
                    <input type="number" class="form-control" name="feedback[score]">
         </div>
         <div class="form-group">
                <label for="gradework">Tesis:</label>
                 <%= select_tag(:gradework, options_from_collection_for_select(@grad_jury ,:id, :name), :prompt => "Ninguno", class: "form-control", name: "feedback[gradework]") %>
         </div>
         <div class="form-group">
                <%#User:<br>%>
                <input type="hidden" class="form-control" name="feedback[user]" value= <%= @cUser %>>
        </div>
    
          <br><br>
        <button type="submit" class="btn btn-default" data-dismiss="">Agregar</button>
        <!-- <input type="submit" value="Agregar"> -->
    </form>
    
    <%= select_tag(:gradework, options_from_collection_for_select(@grad_jury ,:id, :name), :prompt => "Ninguno", class: "form-control", name: "feedback[gradework]") %>
    
    <%= select_tag(:gradework_id, options_from_collection_for_select(@grad_jury ,:id, :name), :prompt => "Ninguno", class: "form-control", name: "feedback[gradework_id]") %>