2011-07-04 3 views
0

私はスタック上で同様の質問を見たことがあるが、これは重複しているとは思わない。link_to 1ページだが、コントローラを別のものから

病気は簡単です。私はリンクをクリックする方法を知りたいです、それはユーザーを1ページに連れて行きますが、別のページからdefを実行してください。これは、Webクローラーのレールアプリケーションであり、私は非常にシンプルだと思ったが、私には厄介なものになった。そのが稼働して終わった後

<td><%= link_to 'Crawl!', crawl_path :controller => :crawl, :action => :crawl %> 

これは、クローラのインデックスページにユーザーを取る:私は現時点では

。 私がしたいことは、それらを別のページにリダイレクトすることです。つまり、クローラのサイトとステータスのリストを表示するjobs_path(これは正常に動作しています。関連性を考慮して含めるだけです)。私はこのようにそれをしようとした場合:

<td><%= link_to 'Crawl!', jobs_path, :controller => :crawl, :action => :crawl %> 

ユーザーは、ジョブのページに向けられているが、クローラのスクリプトが走ったことがないので、ジョブリストが更新されませんでした。記録のために、各仕事はちょうどurlであり、それがある深さです。

これは単なる構文上のエラーですか、それともマークオフですか?

助けてください。

+0

サイドノートです。このようなレコードからどのように削除するのですか? @ jobs.delete? – overtone

+0

あなたのコントローラの 'destroy'アクションでは' @jobs = Job.find(params [:id]); @ jobs.destroy'を実行します。これを2行で行い、 ';'を取り除くことができます。 deleteメソッド、job_path(job)、confirm => "本当ですか?"、:method =>:delete%にリンクするための適切な 'link_to'ヘルパーが必要です。 > ' –

答えて

2

redirect_tocrawl#crawlに設定しましたか?完了時にjobs_pathにリダイレクトするように設定されている可能性がありますか?

+0

私は適切なルートも追加します:' crawl_path'だから 'link_to" Crawl! "、crawl_path' – josemota

+0

ああ、確かに - thanks @josemota –

+0

@ you2guysありがとう!私はちょうどそれを変更しました。私はまだルビーの構文と優れた練習に頭を悩ましています。 @Mikeクロール#crawlにリダイレクトはありません。私は正直な態度を知らない。クロールページにリンクしてそこからリダイレクトすることをお勧めしますか? – overtone

関連する問題