Разработать редактировать информацию учетной записи - PullRequest
0 голосов
/ 29 марта 2012

Когда я перехожу к edit_user_registration_path, предоставленному Devise, у меня есть поля, такие как электронная почта и имя пользователя , предварительно заполненные .

Я хочу создать пользовательскую страницу профиля пользователя с похожей формойдля редактирования информации пользователя, содержащей дополнительные поля зависимой модели.И я хочу, чтобы поля были предварительно заполнены .Как мне сделать это правильно?

Форма по умолчанию, предоставленная Devise:

<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
  <%= devise_error_messages! %>

  <div><%= f.label :email %><br />
  <%= f.email_field :email %></div>

  <div><%= f.label :username %><br />
  <%= f.text_field :username %></div>

  <div><%= f.label :password %> <i>(leave blank if you don't want to change it)</i><br />
  <%= f.password_field :password, :autocomplete => "off" %></div>

  <div><%= f.label :password_confirmation %><br />
  <%= f.password_field :password_confirmation %></div>

  <div><%= f.label :current_password %> <i>(we need your current password to confirm your changes)</i><br />
  <%= f.password_field :current_password %></div>

  <div><%= f.submit "Update" %></div>
<% end %>

1 Ответ

3 голосов
/ 29 марта 2012

Использовать вложенные атрибуты

В вашей пользовательской модели устройства, если у вас есть другие зависимые модели, вы можете добавить связь между этими моделями, например has_many и belongs_to. Для этого:

Разработка пользовательской модели:

accepts_nested_attributes_for :name_of_other_model

Тогда в вашей форме вы можете использовать fields_for. поля_документов

Вот еще и великий Railscast этого здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...