2009-09-04 11 views
0

は、私は現在、正しく、次のURIを作成Permalink_fuプラグインを使用しています:パーマリンクへのRailsルートを作成するにはどうしたらいいですか?URLにコントローラーはありませんか?

http://localhost:3000/pages/some-permalink-to-page 
私は今、私は私を残しURIから/ページ/パーツをドロップすることができるように私のルーティングを設定したい

http://localhost:3000/some-permalink-to-page 

私のconfig/routes.rbをファイルの最後に次を追加してみました:

map.connect ':permalink', :controller => 'page', :action => 'view' 

が、私はn個をしようとしたとき、私は、次のエラーを取得しますew URI:

uninitialized constant PageController 

ご意見はありますか?私はRails 2.2.2を走らせていますが、今度はエッジレールを試しても嫌です。

多くのおかげで、

ベン...あなたのルートで

答えて

0

は、必要があります。コントローラは、 "ページ"(複数)も?

0

ありがとうマイク、私はいくつかの誤りを犯しました。これは私がそれを働かせる方法です。 ページの下部近くに、次のルーティングを追加routes.rbをファイルに:

map.connect ':id', :controller => 'pages', :action => 'show' 

問題は、例えば、任意の悪いURLがひどく失敗しようとしている今、その後で

http://localhost:3000/this-permalink-doesnt-exist 

404エラーではありません。今私はURLのすべてのバリエーションのための正しい振る舞いを取得

def show 
    @page = Page.find_by_permalink(params[:id]) 
    if @page.nil? then 
     render :file => 'public/404.html', :status => '404' 
    else 
     respond_to do |format| 
     format.html # show.html.erb 
     format.xml { render :xml => @page } 
     end 
    end 
    end 

http://localhost:3000/pages/some-permalink-to-page 
http://localhost:3000/some-permalink-to-page 
and the if an invalid permalink is entered 
http://localhost:3000/no-such-permalink 
gets rendered to the default public/404.html file. 

希望を

私はpages_controller.rb に次の行を追加することで、これを固定は作用を示しますそれは他の誰かを助け、マイクに感謝します。 ベン...

0

あなたのroutes.rbをエントリにタイプミスがあります:

map.connect ':permalink', :controller => 'page', :action => 'view' 

読み込みする必要があります。

map.connect ':permalink', :controller => 'pages', :action => 'view' 

:コントローラのパラメータは、コントローラの単数形の名前です「ページ」にする必要があります

関連する問題