0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

rails で attr_acceccer を見ない理由

Posted at

上記の自販機演習でがっつりアクセサメソッドについて理解する

そこで1つ疑問がわいた

なぜ自分はこんなにもアクセサメソッドについて知らないのか

ただ冷静に考えて見ると当然なことだった

なぜなら rails をつかっていて
アクセサメソッドを使うことなんてなかったから。

ということで rails ではどうしてアクセサメソッド使わないでもいけるのかを調べた


こちらの記事わかりやすくまとめていただいてあった

要するに

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name
      t.string :description

      t.timestamps null: false
    end
  end
end

こんなかんじのマイグレーションファイルがあって
そのテーブルに紐づくモデルを作成すると

class User
  attr_accessor :name, :description
end

こういう意味になるとのこと
つまりカラムに対してアクセサメソッドが紐づく状態になる

内部的にはアクセサメソッドが使われているってことかな

だからアクセサメソッドを定義しなくても

user = User.new(name: "aa")
user.name => "aa"

インスタンスのプロパティを読み書きできる(上のコードは適当)

0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?