質問

現在、Railsでプロジェクト管理アプリを構築しています。背景情報は次のとおりです。

現在、2つのモデルがあります。1つはユーザーで、もう1つはクライアントです。クライアントとユーザーは1対1の関係にあります(クライアント-> has_oneとユーザー-> belongs_toは、usersテーブルにある外部キーを意味します)

つまり、私がやろうとしているのは、クライアントを追加したら、実際にそのクライアントに資格情報を追加(ユーザーを追加)できることです。そうすることで、すべてのクライアントがそのクライアントの名前の横にリンクとともに表示されます。つまり、そのクライアントの資格情報を実際に作成できます。

そのために、このようなヘルパーへのリンクをヘルパーとして使用しています。 ジェネラコディセタグプレ

彼のURLが次のように構成されることを意味します: ジェネラコディセタグプレ

IDが2のクライアントのユーザーを作成する。

次に、次のように情報をコントローラーにキャプチャします。 ジェネラコディセタグプレ

編集:これは、現在ビュー/コントローラーとルートにあるものです

このエラーが引き続き発生します:「/ clients // user」と{:method=>:post}が一致するルートはありません

ルート ジェネラコディセタグプレ

コントローラー ジェネラコディセタグプレ

表示 ジェネラコディセタグプレ

役に立ちましたか?

解決 2

クライアントを作成するときに、ネストされた属性を使用し、ユーザーモデルを含めることで、これを解決しました。そして、それは完璧に機能します。

さらに詳しい情報が必要な場合に備えて、解決策として考え出すのに役立った2つのスクリーンキャストを次に示します。

http://railscasts.com/episodes/196-nested-model-form-part-1

http://railscasts.com/episodes/196-nested-model-form-part-2

他のヒント

フォームタグが間違っています。/usersなしで:client_idに投稿しています。

これを試してください: ジェネラコディセタグプレ

または、ネストされたリソースを使用することもできます:

config / routers.rb ジェネラコディセタグプレ

コントローラー ジェネラコディセタグプレ

表示 ジェネラコディセタグプレ

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top