如何在我的视图中编写text_field,自动是否尊重数据库字段的大小?
我的迁移:
t.string :name, limit: 100
我的观点:
<%= f.text_field :name %>
答案 0 :(得分:0)
在模型中使其成为常数:
class User < ActiveRecord::Base
MAX_NAME_SIZE = 100
validates :name, length: { maximum: MAX_NAME_SIZE }
end
并以表格形式使用:
<%= f.text_field :name, size: User::MAX_NAME_SIZE %>
答案 1 :(得分:0)
嗯,有办法完成它。在/helper
目录中编写代码,并将方法放在:
module ApplicationHelper
def column_info model_name, field_name, option
model_name.constantize.column_types[field_name].public_send option
end
end
现在,在视图中的任何位置使用此辅助方法..
<%= f.text_field :name, size: column_info('Person', :name, :limit) || 100 %>