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チュートリアル第6章 modelファイル

Posted at

###modelファイル
Userモデルの作成によってどのようにマイグレーションファイルが作成されるかを見てきた。

usersテーブルを作成することで、development.sqlite3という名のファイルを更新し、id、name、email、created_at、updated_atを作成しました。

この節では、以後このモデル用ファイルを理解することに専念します。

app/models/ディレクトリにある、user.rbに書かれたUserモデルのコードを見てみましょう。
####生成されたばかりのUserモデル

class User < ApplicationRecord
end

class User < ApplicationRecordという構文で、UserクラスはApplicationRecordを継承する
Userモデルは自動的にActiveRecord::Baseクラスのすべての機能を持つことになります
ActiveRecord::Baseに含まれるメソッドなどについて知らなければ何の役にも立ちません

###演習
1.railsコンソールを開き、User.newでUserクラスのオブジェクトが生成されること、そしてそのオブジェクトがApplicationRecordを継承していることを確認してみてください

ubuntu:~/environment/sample_app (modeling-users) $ rails console
Running via Spring preloader in process 13587
Loading development environment (Rails 6.0.3)
>> user = User.new
   (0.4ms)  SELECT sqlite_version(*)
=> #<User id: nil, name: nil, email: nil, created_at: nil, updated_at: nil>
>> user.class
=> User(id: integer, name: string, email: string, created_at: datetime, updated_at: datetime)
>> user.class.superclass
=> ApplicationRecord(abstract)

2.ApplicationRecordがActiveRecord::Baseを継承していることについて確認してみてください。

ubuntu:~/environment/sample_app (modeling-users) $ rails console
Running via Spring preloader in process 13587
Loading development environment (Rails 6.0.3)
>> user = User.new
   (0.4ms)  SELECT sqlite_version(*)
=> #<User id: nil, name: nil, email: nil, created_at: nil, updated_at: nil>
>> user.class
=> User(id: integer, name: string, email: string, created_at: datetime, updated_at: datetime)
>> user.class.superclass
=> ApplicationRecord(abstract)
>> user.class.superclass.superclass
=> ActiveRecord::Base

継承していることを確認できた。

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?