2015-06-12 2 views
0

я иметь такую ​​форму:данных соблюдать помечает все поля как недействительные

<%= form_for(@building_shared_space, data: {abide:''}) do |f| %> 
    ... 
    <div class="field"> 
    <%= f.label :room_type, 'Room Type' %> 
    <%= f.text_field :room_type, placeholder: 'Room Type', required: '' %> 
    <%= content_tag(:small, 'Please enter a room type', class: 'error') %> 
    </div> 
    <div class="field"> 
    <%= f.label :description %> 
    <%= f.text_field :description %> 
    </div> 
    <div class="field"> 
    <%= f.label :default -%> 
    <%= f.check_box :default %> 
    </div> 
    ... 

Когда я представляю, это правильно подсвечивает и отображает предупреждение рядом с номером типа. Тем не менее, это также делает другие формы ярлыками красными. Почему это происходит?

Я использую Foundation и Rails 4.

+0

Ну. Можете ли вы показать данные файла журнала разработки, что есть? Отправьте форму еще раз и посмотрите, что она печатает файл журнала, и вставьте их здесь. –

ответ

0

Для того, чтобы сделать работу <small class="error"> ... </small>, он должен быть родственный вход. Хотя может показаться, что элемент после будет работать, как это было бы родным братом, этот код влияет на всех-братьев. (Что имеет смысл в 20/20 обратном направлении.)

Формулировка документации может быть истолкована (особенно с небольшим сном), что упаковка <div> предназначена только для примера. Однако наличие родительского элемента для элемента управления ввода и сообщения об ошибке является обязательным. <DIV> просто работает невероятно хорошо.

Пример кода пользовательских именованных шаблонов на самом деле не отображает элемент упаковки. Это также, если быть справедливым, не отображает элемент сообщения об ошибке. Но это может ввести в заблуждение тот факт, что обертка <div> является излишней и просто для объяснения происходящего, а не для того, чтобы быть необходимым компонентом создания правильной древовидной структуры в DOM, чтобы изолировать поведение проверки.

+0

Короче убедитесь, что ваш ввод завернут в '

'. –

Смежные вопросы