Как обновить настраиваемую форму в рельсах? - PullRequest
2 голосов
/ 20 октября 2011

У меня есть следующая модель

 t.string   "name"
 t.date     "start_at"
 t.date     "end_at"
 t.datetime "created_at"
 t.datetime "updated_at"
 t.string   "trainer_id"
 t.string   "venue_id"
 t.string   "description"
 t.boolean  "holy"
 t.integer  "nxt"
 t.string   "country_id"
 t.string   "status"

Статус слуха в моей форме может быть «1» или «0». Я загрузил его через выпадающий список следующим образом

enter code here
<%remote_form_for @event, :url => {:controller => 'events', :action => 'update'}  do |f| %>
  <p>
   <%= f.label :name %><br />
   <%= f.text_field :name %>
  </p>
  <p>
   <%= f.label :start_at %><br />
   <%= calendar_date_select_tag "event[start_at]", "", :valid_date_check => "date.getDay() != 0 && date.getDay() != 6 && date.stripTime() > (new Date()).stripTime() ", :value=> @event["start_at"] %>
  </p>
  <p>
   <%= f.label :end_at %><br />
   <%= calendar_date_select_tag "event[end_at]", "", :valid_date_check => "date.getDay() != 0 && date.getDay() != 6 && date.stripTime() > (new Date()).stripTime()", :value=> @event["end_at"] %>
  </p>
  <p>
   <%= f.label :trainer_id %><br />
       <%= collection_select("event", "trainer_id", @trainers , :id, :name, {:prompt => 'Select a Trainer'})%>
  </p>  
  <p>
   <%= f.label :country_id %><br />
       <%= collection_select("event", "country_id", @countries , :id, :name, {:prompt => true}, :id => 'xx') %>
       <%= observe_field('xx', :url => { :controller => 'countries', :action => 'update_city_menu' },
              :update => 'city_field_div',
      :with => "'myval=' + escape(value)") 
      %>
       <div id="city_field_div">
       <%= collection_select("event", "venue_id", Venue.find(:all,:conditions=> [ "country_id = ?", (session[:CountID]).to_s]) , :id, :place, {:prompt => true}) %>
       </div>
  <p>
       <%= f.label :status %><br/>
       <select id="status">
       <option value="0"<%= session[:status] == 1 ? ' selected="selected"' : '' %>>Completed</option>
       <option value="1"<%= session[:status] == 0 ? ' selected="selected"' : '' %>>Not Completed</option>
       </select>
  </p>  
  <p>
   <%= f.submit 'Update' %>
  </p>       
<% end %>

Все данные могут отображаться правильно, но проблема в том, что когда я пытаюсь обновить status , он не обновляет поле состояния [ Все остальные обновляются идеально ]. Пожалуйста, кто-нибудь может объяснить ошибку на этом? Даже это не через сообщение об ошибке.

1 Ответ

1 голос
/ 20 октября 2011

Я нашел ответ, который мы можем использовать, выберите статус как этот

    <%= select( "event", "status", { "Completed" => "1", "Not Completed" => "0"}) %>

Это все сделает правильно.:)

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