我想连接两个实体(项目和问题)和Rails说,一些错误信息,但我不知道,我该怎么办。 你能帮我解决这个问题,好吗? 非常感谢。
Answer 1:
不知道你正在尝试做的,但它看起来像你有一个嵌套的资源,因此想传递一个数组form_for
,但你实际上是通过两个独立的对象。 更改:
<%= form_for(@project, @project.issues.build) do |f| %>
至:
<%= form_for([@project, @project.issues.build]) do |f| %>
随着这一变化,你会经过一个数组form_for
,而不是两个参数。
Answer 2:
我认为你已经使用嵌套资源是这样的:
resources projects do
resources issues
end
如果您使用的,尽量让你的表格是这样的:
<%= form_for([@project, @issue]) do |f| %>
并在IssueController:
def new
@project = Project.new
@issue = @project.issues.build(params[:issue])
end
def create
@project = Project.find(params[:project_id]
@issue = @project.issues.create(params[:issue]
end
并再次运行看到的东西发生。 希望这有助于。
文章来源: ArgumentError in Rails