0

私の見解では、次のような名前付きルートを指定します。

show.html.erb ->

seo_path(:id => "45")

私のルートでは、次のように定義します。

routes.rb ->

map.seo "/pages/:id/:permalink", :controller => "pages", :action => "show"

以下は、私が得ているエラーメッセージです。どうやら差分はIDのようですが、理由はわかりません。

アップデート:

私はこれをエラーとして取得しています:

seo_url failed to generate from {:controller=>"pages", :id=>"45", :action=>"show"}, expected: {:controller=>"pages", :action=>"show"}, diff: {:id=>"45"}
4

2 に答える 2

2

to_param メソッドを使用しないのはなぜですか?

class YourModel << AR::Base

 def to_param
    "#{id}-#{title.parameterize}"
 end

したがって、次のようなルートを取得します

/pages/1-here-is-my-converted-article-title-to-permalink

それに加えて、Rails がルートを認識していないようです。Web サーバーを再起動しましたか? :permalink 属性だけを送信してみて、どうなるか見てみましょう。

于 2009-09-26T16:36:15.140 に答える
0

私はあなたの質問を完全には理解していません。

id名前付きルートとビューで既に指定されているようです。ビューでも指定する必要があるようですpermalink。エラーが発生していますか?

于 2009-09-25T16:44:59.230 に答える