Кнопка Rails to: Как указать контроллер?

Я не понимаю, что здесь происходит. Я хочу поставить button_to в моем (haml) представлении. Если я это сделаю:

=button_to( "New", {:action => "new"}, {} )

сгенерированной страницы:

<form action="/cached_input_files/new" class="button_to" method="post">
  <div>
    <input type="submit" value="New" />
    <input name="authenticity_token" type="hidden" value="..blah.." />
  </div>
</form>

что нормально, но мне нужно обратиться к другому контроллеру. Но если я попытаюсь указать контроллер:

=button_to( "New", {:action => "new", :controller => "editor"}, {} )

Я:

<form action="/assets?action=new&controller=editor" class="button_to" method="post">
  <div>
    <input type="submit" value="New" />
    ...

Я ожидал action на "/editor/new", и я понятия не имею, почему это не так, и как правильно указать контроллер, который я хочу направить к.

Я использую Rails 3.2.1.

2 ответов


вы не хотите включить в собственный хэш, я думаю, что это сбивает с толку переводчика.

=button_to( "New", :action => "new", :controller => "editor")

должны делать то, что вы хотите.


попробовать

=button_to( "New", new_editor_path, :method => :get )