ユーザー編集画面が表示されるよう設定

users/edit.html.erbを表示させるため必要なルーティングとコントローラーを実装する

1.ルーティングの設定(routes.rb)

resources :users, only: [:edit, :update]

editとupdateのみコーティングするためresourcesにeditとupdateをonlyに付けました。

 

2.ターミナルでrails g controller users

usersコントローラーの作成

 

3.コントローラーにeditとupdateアクションの記述

def edit

end

 

def update

 current_user.update(user_params)

end

 

private

def user_params

params.require(:user :モデル名).permit(:name, :email :カラム名)

end

・ストロングパラメーターを使用しupdateアクションをuser_paramsに定義する。

・current_userメソッドを使用して更新する。

・requireメソッドを使用しuserモデルから情報を持ってくる。

・さらに詳細をpermit(パラメーターを指定する)

 

ちょっと拙いアウトプットかと思いますが・・・

暖かい目でよろしくお願いします。

ruby 基礎 include?を使った名前の登録

rubyの勉強をアウトプットします。

今回の問題はこちら!!

問題.1

名前を入力する機能を作成しましょう。
名前以外にピリオド(.)や空白があるとエラーを表示させます。

出力例:

登録したい名前を入力してください(例)YamadaTaro

YamadaTaro → 登録が完了しました
Yamada.Taro→!エラー!記号は登録できません
Yamada Taro → !エラー!空白は登録できません

問題.1

名前を入力する機能を作成しましょう。
名前以外にピリオド(.)や空白があるとエラーを表示させます。

 

①まずincludeメソッドを実行するためにhashでインスタンス変数を作っておく。

 

hash = gets.chomp(ターミナルで入力)

 

②if文とincludeメソッドを使い出力したい内容を記述する。

if hash.include?(".")→.はありますか?

 puts "!エラー!記号は登録できません"

elsif hash.include?(" ")→" "空白はありますか?

 puts "!エラー!空白は登録できません"

else

 puts "登録が完了しました"

end

 

if文を使うイメージはできてたがコードを書いてみて応用がたくさんできると感じたので、たくさん書いて使っていきたい✌️

 

rubyのハッシュの復習をアウトプットします。

複数のユーザー情報をハッシュとしてもつ変数を名前だけ取り出す。

user_data = [

{user: {profile: {name: 'George'}}},

{user: {profile: {name: 'alice'},

{user: {profile: {name: 'Taro'}}}

]

key1がuser

key2がprofile

key3がTaroとなる。

 

なので

each文を使いvaluesを全て表示する。

user_data.each do |user|

 puts user[:user][:profile][:name]

end

となる。

 

Georgeのみを取り出す場合は

puts user[0][:user][:profile][:name]

で取り出せました✌️

 

どんどんこの調子で覚えていきます。

 

カフェでの勉強とユーザーの登録の設定

久しぶりの平日の休み✌️

よく集中できるカフェに行ってきました!!

 

ユーザーの登録の設定やdeviseをGemファイルに記載し新規登録やログインの実装を行った。なかなか記憶の定着には程遠い・・・

練習問題もあるし何度も問題をときながら勉強していきたいと思いました。

そしてなんとプログラミングの勉強をしてからメモを取りづ付けていたノートが2冊目にいきました。やっぱり書くと覚えるし見返すこともたくさんあったのでこれからも付けて行こうかなと思います。

 

今回勉強した内容のアウトプットを行おうと思います。

1.deviseの設定ではGemの導入を行う。→gem 'devise'

2.ターミナルでbundle installを実行しインストール。

3.インストールを行う。→rails g devise:install

4.モデルの作成 →rails g devise(modelではない)user

5.テーブルの作成 →rails db:migrate

続きは明日勉強してアウトプットします。

PicTweetの作成①

2日連続の更新です❗️❗️

今日はスクールで勉強しました。

 

初のカリキュラムでPicTweetの作成😁

表示・保存・削除の項目をやりました✌️

だけどカリキュラム通りに行ってるのでどこが難しいのか・・・

どこがわかってないかもわからず無心にカリキュラムを進めてます・・・

勉強方法大丈夫かなぁ・・・。

 

とりあえず一通り作って見てその後繰り返します。

来週の日曜には完成目指す😆✌️