1

これが私の問題です:

  • ユーザーが投稿を作成できる Web アプリがあります。

  • ユーザーと投稿が同時に作成されます - 投稿からユーザーのメールを抽出して、ユーザーエントリを作成します。(パスワード・ログイン・登録等不要)

  • 私のroutes.rbファイルには、ユーザーにネストされた投稿があります(添付を参照)

さて、ここに私の質問があります:

posts#new作成フォームはどこにあるべきですか?現在、/posts/new にありますが、これは明らかに間違っています。ルーティング エラーが発生しています。

フィードバックをお寄せいただきありがとうございます。

ルート.rb

Mysalary::Application.routes.draw do

resources :users do
   resources :posts
   end

resources :profiles
resources :pages

get "pages/home"
get "pages/about"
get "pages/legal"
get "pages/feedback"

root :to => 'posts#new'

end
4

2 に答える 2

1

postsネストされたリソースとしてしかないため、次の場所にあります/users/:user_id/posts/new

にアクセスしたい場合は/posts/new、ネストを解除してresources :postsください。ネストしたままにして、ネストの外で繰り返すこともできます。そうすれば、双方向に到達できます。

rake routesコンソールで実行することを忘れないでください。

于 2012-04-23T21:38:40.923 に答える
1

私は自分で投稿を追加するので、両方を持っていると:

ルート.rb

resources :users do
  resources :posts
end

resources :posts
于 2012-04-23T21:41:55.290 に答える