現在、RailsでTwitterのようなアプリを作っています。プロフィールとして名前、メールアドレス、自己紹介文をユーザーが登録、編集可能にしたいです。現在、名前とメールアドレスは編集可能なのですが、自己紹介文の変更ができません。
HTML
1<div class="row"> 2 <div class="col-md-6 col-md-offset-3"> 3 <%= form_with(model: @user, local: true) do |f| %> 4 <%= render 'shared/error_messages', object: f.object %> 5 6 <%= f.label :name %> 7 <%= f.text_field :name, class: 'form-control' %> 8 9 10 <%= f.label :email %> 11 <%= f.email_field :email, class: 'form-control' %> 12 13 <%= f.label :password %> 14 <%= f.password_field :password, class: 'form-control' %> 15 16 <%= f.label :password_confirmation, "Confirmation" %> 17 <%= f.password_field :password_confirmation, class: 'form-control' %> 18 19 <%= f.label :introduction %> 20 <%= f.text_area :introduction, class: 'form-control' %> 21 22 <%= f.submit "Save changes", class: "btn btn-primary" %> 23 <% end %> 24 25 <div class="gravatar_edit"> 26 <%= gravatar_for @user %> 27 <a href="https://gravatar.com/emails">change</a> 28 </div> 29 </div> 30</div>
サンプルのユーザー
User.create!(name: "Example User2", email: "example@railstutorial.org", password: "foobar", password_confirmation: "foobar", admin: true, activated: true, activated_at: Time.zone.now, introduction: "I am the developer of this app.")
Controller
def edit @user = User.find(params[:id]) end def update @user = User.find(params[:id]) if @user.update(user_params) flash[:success] = "Profile updated" redirect_to @user else render 'edit' end end private def user_params params.require(:user).permit(:name, :email, :password, :password_confirmation, :introduction) end
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー