【问题标题】:Return association object created by update返回更新创建的关联对象
【发布时间】:2014-05-28 23:17:00
【问题描述】:

QuestionList 有很多Question

我正在通过update 方法在控制器中创建question

@question_list.update(params.require(:question_list).permit(questions_attributes: [:id, :question_list_id, :title, :position, :_destroy]))

我将如何返回创建的对象?

【问题讨论】:

  • 不确定你在问什么,update 方法已经返回了更新的对象,不是吗?
  • @vee 不,它为我返回一个布尔值。但是你说得对,文档说它应该返回一个对象。
  • @BradWerth 为什么我在做q = Question.last.update(title: "Just testing") 时得到true 作为值(对于q)?
  • 文档是对的,它返回了对象。 Person.update 返回一个对象,@person.update 返回布尔值。

标签: ruby-on-rails ruby-on-rails-4


【解决方案1】:
@new_question = Question.create(question_params) 
@question_list.questions << @new_question

您还应该在(私有)控制器方法中定义您的参数

def question_params
  params.require(:question_list).permit(questions_attributes: [:id, :question_list_id, :title, :position, :_destroy])
end

【讨论】:

    猜你喜欢
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-07
    相关资源
    最近更新 更多