3
0

More than 3 years have passed since last update.

Active Record でよく使うメソッド

Last updated at Posted at 2020-06-22

ActiveRecordで使用するメソッド

メソッド 役割 戻り値 記述例
valid? 対象のオブジェクトが有効かどうか確認 true or false user.valid?
save データベースに対象のオブジェクトを保存させる true or false user.save
create モデルの生成と保存を同時におこなう 成功:オブジェクト自身
失敗:エラー
User.create(name: 'hoge', email: 'fuga')
destroy 対象のオブジェクトの削除 成功:オブジェクト自身
失敗:エラー
user.destroy
find 引数にidを入れてデータベースからレコードを取得 成功:対象のオブジェクト
失敗:エラー
User.find(1)
find_by 引数にkeyとvalueを入れて、データベースからレコードを取得 成功:オブジェクト自身
失敗:nil
User.find_by(name: 'hoge')
update 属性のハッシュを渡して、データベースの値を更新させる 成功:true or 失敗:エラー user.update(name: 'hoge', email: 'fuga')
update_attribute 特定の属性のみを更新する
第一引数にkey、第二引数にvalue
検証の条件を無視して更新できる
成功:true or 失敗:エラー user.update_attribute(:name, 'piyo')

使用パターン

saveメソッドの返り値が true or false になるため、controllerのcreateアクションの実装時に使われる

hoge_controller.rb
def create    
  tweet = Tweet.create(tweet_params)
  if tweet.save
    # 保存成功時の処理
  else
    # 保存失敗時の処理
  end
end
3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0