4

私は本TheRails3Wayで次のような例を見ました

redirect_to post

これは、のために特別な意味を持っていますかpost、またはそれが例としては不適切な選択であり、postが単なるドメインオブジェクトであり、そのオブジェクトのURLにリダイレクトされている場合。

4

3 に答える 3

8

完全な答えを得るには完全な例を見る必要がありますが、著者はモデルの1つの名前として「Post」を選択しただけで、POSTアクションで読者を混乱させる可能性があることに気づいていなかったと思います。

HTTPプロトコル(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html)の一部として、実際にはPOSTアクションにリダイレクトすることはできません。または、より明確に言えば、リダイレクトで呼び出している宛先はすべて、GETメソッドで返す必要があります。

お役に立てば幸いです。

于 2012-09-08T03:17:29.353 に答える
1

Railsルーティングガイドを見ると、それが問題ない理由が明確になっているはずです。

また、アプリケーション実行のルートを確認する場合は、次のようにします。

cd path/to/your/app
rake routes

これにより、アプリで利用可能なルートが一覧表示されます。

于 2012-09-08T00:53:54.070 に答える
0

config/routes.rbにPostリソースと対応するルートが必要です

たとえば、「rails g resource post title:string content:text」を実行して生成します。「redirect_topost」のルートは動的に処理されます。Post "post"のインスタンスは、redirect_toメソッドの引数として渡され、ページがposts#showアクションにリダイレクトされ、Postのそのインスタンスの:idが渡されます。それは「レールマジック」です

于 2012-09-09T01:09:31.587 に答える