На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
    > validates и fields_for
      есть форма регистрации
      ExpandedWrap disabled
         <%= form_for([resource,resource.with_user_setting], :url => registration_path(resource_name)) do |f| %>
            <p><%= f.label :email %><br />
              <%= f.email_field :email %></p>
          ..........................
        ............................
        ............................
          
            <%=f.fields_for :user_setting do |u| %>
              <p><%=u.label :language_id %></p>
             <p><%=u.select(:language_id, options_for_select(Language.all.collect {|p| [ p.name,p.id]})) %></p>
            <%end%>
          <% end %>

      так вот когда оставляешь пустое поле email выдается ошибка, все правильно, но на страницу добавляется еще один select с выбором языка, почему интересно, ну и решение бы=))))
        А лэйбла тоже 2? Или один лэйбл и 2 селекта?
          Цитата Мохнатый @
          А лэйбла тоже 2? Или один лэйбл и 2 селекта?

          всего по два
            Хм, попробуй так для начала:

            ExpandedWrap disabled
              <%= f.fields_for :user_setting do |u| -%>


            И покажи мне свой экшен в контроллере и модельку.
            Сообщение отредактировано: Мохнатый -
              Мохнатый а все нашел ошибку
              в модели user в методе with_user_setting нужна проверка

              ExpandedWrap disabled
                  def with_user_setting
                    self.user_setting.build if user_setting.blank?
                    self
                  end

              а у меня ее(if user_setting.blank?) не было
              Сообщение отредактировано: Cepheus -
              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script execution time: 0,0219 ]   [ 15 queries used ]   [ Generated: 8.02.23, 23:54 GMT ]