1

2 つのエンティティ (プロジェクトと課題) を接続したいのですが、Rails でエラー メッセージが表示されますが、どうすればよいかわかりません。直してもらえませんか?どうもありがとう。

エラー画面

4

2 に答える 2

1

何をしようとしているのかわかりませんが、ネストされたリソースがあり、配列を に渡したいようですが、form_for実際には 2 つの別々のオブジェクトを渡しています。変化する:

<%= form_for(@project, @project.issues.build) do |f| %>

に:

<%= form_for([@project, @project.issues.build]) do |f| %>

この変更によりform_for、2 つの引数ではなく、1 つの配列を に渡すようになります。

于 2012-11-02T13:05:22.127 に答える
0

次のようなネストされたリソースを使用したと思います。

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

もう一度走って何かが起こるのを見てください。この助けを願っています。

于 2012-11-02T14:01:34.487 に答える