rails6 既存のテーブルをmodelとして使用する
rails6で既存のテーブルをmodelとして使用するまでの手順を記述してます。Railsのバージョンは6.1.1を使用してます。
環境
- OS CentOS Linux release 7.9.2009 (Core)
- Ruby 2.7.2
- Rails 6.1.1
- rbenv 1.1.2-40-g62d7798
- PostgreSQL 13.1
検証用テーブル作成
「mytable」という名前で作成してます。
create table mytable (
id integer,
name varchar(10)
);
insert into public.mytable values (1, 'sato');
insert into public.mytable values (2, 'yamada');
insert into public.mytable values (3, 'suzuki');
「mytable」
model作成
「migration」は作成しないので「–skip-migration」でmodelを作成します。
rails generate model Mytest --skip-migration
model編集
作成された「app/models」配下にある「mytable.rb」を以下のように、
参照するtableとprimary_keyを指定します。
class Mytable < ApplicationRecord
self.table_name = "mytable"
self.primary_key = "id"
end
確認
指定したテーブル「mytable」が参照されているか確認してみます。
rails c
irb(main):001:0> Mytable.find(1) Mytable Load (0.2ms) SELECT "mytable".* FROM "mytable" WHERE "mytable"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]
=> #<Mytable id: 1, name: "sato">
mytableに存在するid「1」のレコードが取得できていることが確認できます。
-
前の記事
AlmaLinux 3Dモデルツール「Blockbench」をインストールする 2021.11.19
-
次の記事
TortoiseGitで「commit –amend」を使用する 2021.11.19
コメントを書く