RoR установить значение по умолчанию для текстового поля при использовании наблюдения - PullRequest
1 голос
/ 04 сентября 2010

Я пытаюсь установить значение по умолчанию для текстового поля, используемого для поиска, в котором используется метод наблюдения. Вот то, что я получил, который работает.

<% form_tag('javascript:void(0)') do %>
    <%= text_field_tag 'phrase', nil, {:onfocus => "$('results').show();", :onblur => "$('results').hide();"} %>
    <%= observe_field :phrase,
      :frequency => 0.5,  
      :update => 'results',
      :url => {:controller => :profiles, :action => 'search', :only_path => false },
      :with => "'phrase=' + encodeURIComponent(value)" %>
 <% end %>

Это прекрасно работает, но, очевидно, значение равно нулю.

Теперь, если я добавлю значение следующим образом:

<% form_tag('javascript:void(0)') do %>
    <%= text_field_tag 'phrase', :value => 'test', {:onfocus => "$('results').show();", :onblur => "$('results').hide();"} %>
    <%= observe_field :phrase,
      :frequency => 0.5,  
      :update => 'results',
      :url => {:controller => :profiles, :action => 'search', :only_path => false },
      :with => "'phrase=' + encodeURIComponent(value)" %>
 <% end %>

Исключение выдается.

Есть идеи, как получить значение по умолчанию для этого текстового поля?

Спасибо.

1 Ответ

3 голосов
/ 04 сентября 2010

Не используйте :value => 'test', просто используйте 'test':

<%= text_field_tag 'phrase', 'test' %>

Формат, который вы пытались использовать, предназначен для text_field помощника, который обычно исходит от модели, text_field_tag обычно не исходит от модели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...