0

ActiveAdminを使用してプロジェクトをデプロイしています。そして、私が開発しているときに私はいくつかの問題を抱えていました。「Worker」、「Product」、「Task」などのデータベーステーブルがありました。多くの状況でそれらのテーブルを検索するためのページを作成したかったのです。

簡単なページを作成しました。

ActiveAdmin.register_page "my page" do
content do
    panel "Search details" do
        panel "By Name" do
            render :partial => "form"
        end
    end
end 
end

そしてこれは_form.html.erb

<form action="" method="post">
<input type="text" value="" name="taskid">Task ID</input>
<input type="text" value="" name="productid">Product ID</input>
<input type="text" value="" name="workerid">Worker ID</input>
<input type="submit" value="Submit"/>
</form>

しかし、フォームからコントローラーを呼び出す方法がわかりません。(どのコントローラーが定義されたか)そしてcontent、コントローラーからActiveadminの「my_page」の領域に結果をレンダリングまたは表示するにはどうすればよいですか?

誰かが私を助けるかもしれませんか?plz!

4

1 に答える 1

4

既存のアクティブな管理フィルターを使用して結果を表示するようにフォームを設計します。必要なパラメーターと送信アクションを取得するために、(firebug を使用して) フィルター フォームの HTML を確認することをお勧めします。User モデル (ユーザー フィルターから構築) を検索するために使用するパーシャルを次に示します。

<div class="panel_contents">
  <form method="get" id="q_search" class="filter_form" action="/admin/users" accept-charset="UTF-8">
    <div class="filter_form_field filter_string">
      <label for="q_email" class=" label">Search User Email</label><br/>
      <input type="text" name="q[email_contains]" id="q_email" />
      <input type="submit" value="Go" name="commit" id="q_submit" />
    </div>
  </form>
</div>

結果を既存の形式で表示します。そのために新しいビューを設計する必要はありません。

于 2012-05-21T11:50:59.183 に答える