Установите максимальную длину в текстовом поле в RoR

Кто-нибудь смог установить максимальные полевые длины для текстовых полей

Как установить максимальную длину текстового поля. Вот код iam, использующий

<%= text_field_tag(:create_text), :input_html => {:maxlength => 15, :size => 40}  %>

но я не могу установить максимальное количество символов, которые можно ввести в поле.

Ответ 2

В вызове text_field_tag ​​:

: размер относится к физической длине текстового поля. Он будет достаточно большим, чтобы позволить многим символам быть видимыми в поле. Но пользователь все еще может ввести больше.

: maxlength - максимальное количество символов, которые пользователь может ввести, независимо от физического размера текстового поля. Текстовое поле может быть больше или меньше, но если вы установите: maxlength = > 5, они смогут вводить только 5 символов.

Если это жесткий лимит, который требуется для данных в базе данных, вы также должны установить проверку. Это предотвратит, например, установку большего количества символов в коде Rails.

validates_length_of :column_name, :maximum => 5

Наконец, для подхода к поясам и подтяжкам и для предотвращения того, чтобы даже код, который противоречит базе данных, устанавливал плохую ценность, вы можете обеспечить ее соблюдение на уровне базы данных. В некоторых случаях другой код, чем приложение Rails, может обновлять базу данных. Это предотвращает появление плохих данных даже в этом случае.

Добавление столбца в перенос выполняется следующим образом:

add_column :table_name, :column_name, :string, :limit => 30

Ответ 3

 <%= text_field_tag :"description", '', maxlength: 5   %>
<input type="text" name="description" id="description" value="" maxlength="5">

Ответ 4

вы можете попробовать это

<%=text_field_tag 'create_text',:size=>40 %>