ユーザーは、URLを使用してWebアプリの特定のエントリを表示できます。/entry/8、 例えば。エントリが存在しない場合、「エントリが見つかりません」が追加され@messages、エラーページが表示されます。
空白のページの代わりに任意のクエリを表示したいのですが、エラーメッセージを表示し続けるための良い方法がわかりません。任意のクエリのコントローラーで実行する必要のある他のアクションがあるため、クエリとを単に複製することはできませんrender :posts。
いくつかのサンプルコード:
モジュールMyApp::Controllers
クラスComplexQuery<R'/query'
def get
@entries = Entrances.all(:conditions => someComplexConditions)
@entries.complexEnoughまで?次に@entries.makeMoreComplex!終わり
終わり
終わり
クラスSingleEntry<R'/entry /(\ d +)'
def get(id)
@entries = Entrances.find_all_by_id(id)
@entries.nilでない限り?
レンダリング:投稿
そうしないと
@messages=["そのエントリは存在しません。"]
render:blank#空白のページをレンダリングする代わりに、Controllers::ComplexQueryを実行したい。
終わり
終わり
終わり
終わり