ser*_*erg 0 format time ruby-on-rails ruby-on-rails-3 simple-form
我的rails _form代码:
<%= simple_form_for @admin_event, :html => { :class => 'main-form' } do |f| %>
<%= f.input :time_of_event, :format => l(:time_of_event, '%d %b. %Y'), :as => :string, :label => 'Hora', :input_html => { :class => 'thin', :placeholder => 'eg: 20:30' } %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:
Cannot convert symbol to string.
Run Code Online (Sandbox Code Playgroud)
如何设置它_form以始终使用时间转换器显示此字段,以便数据库有一个完整的字段(2000-01-01 19:30:00.000000),它只会显示在表单中19:30?
小智 7
解决了以下问题:在我的ApplicationHelper上创建了方法"time_format":
def time_format(datetime)
datetime.strftime('%H:%M') unless datetime.blank?
end
Run Code Online (Sandbox Code Playgroud)
然后在表格上:
<%= f.input_field :start_time, :as => :string, :value => time_format(f.object.start_time) %>
Run Code Online (Sandbox Code Playgroud)
希望这会帮助你.