「Tep3-onk-2」を編集中
この編集を取り消せます。
下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
[[category:memo|{{PAGENAME}}]] | [[category:memo|{{PAGENAME}}]] | ||
{{Font color}} | {{Font color}} | ||
− | == | + | == 準備 == |
プロジェクトディレクトリ作成 移動 [[rails前バージョン確認|バージョン確認]] | プロジェクトディレクトリ作成 移動 [[rails前バージョン確認|バージョン確認]] | ||
340行目: | 340行目: | ||
==== 2022-12 -14 othersテーブル ==== | ==== 2022-12 -14 othersテーブル ==== | ||
− | 09- | + | 09-15以降の増分を取る |
% psql -d update_dump -U jq -c "select id, user_id, jiin_id, ie_id, name, yomi, nusi, each_order, memo, generation, created_at, updated_at from clients_old where created_at > '2022-09-15' and nusi = false" -A -F, > ../others_add.csv | % psql -d update_dump -U jq -c "select id, user_id, jiin_id, ie_id, name, yomi, nusi, each_order, memo, generation, created_at, updated_at from clients_old where created_at > '2022-09-15' and nusi = false" -A -F, > ../others_add.csv | ||
− | |||
− | |||
− | |||
コピーコマンドで追加ができる | コピーコマンドで追加ができる | ||
350行目: | 347行目: | ||
=# \COPY others FROM '../others_add.csv' DELIMITER ',' CSV HEADER; | =# \COPY others FROM '../others_add.csv' DELIMITER ',' CSV HEADER; | ||
− | |||
− | |||
− | |||
ここまでのバックアップを取る | ここまでのバックアップを取る | ||
621行目: | 615行目: | ||
INSERT 0 918</nowiki> | INSERT 0 918</nowiki> | ||
− | generate | + | ==== generate ==== |
% rails generate scaffold Place user:references note:references client:references zip:string ken:string city:string etc:string flag:boolean memo:text | % rails generate scaffold Place user:references note:references client:references zip:string ken:string city:string etc:string flag:boolean memo:text | ||
679行目: | 673行目: | ||
</nowiki> | </nowiki> | ||
− | 書き出し jiin_id( | + | 書き出し jiin_id(client_id)変更のため並べ変える gojiは修正する :%s/,f,f/,f,/gc |
% psql -d latest_dump -U jq -c "select id, user_id, jiin_id, ie_id, datetime, content, client_id, every_year, goji, created_at, updated_at from schedules where created_at >= '2022-09-13' order by jiin_id" -A -F, > ../schedules_add.csv | % psql -d latest_dump -U jq -c "select id, user_id, jiin_id, ie_id, datetime, content, client_id, every_year, goji, created_at, updated_at from schedules where created_at >= '2022-09-13' order by jiin_id" -A -F, > ../schedules_add.csv | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==== 以前 ==== | ==== 以前 ==== | ||
901行目: | 886行目: | ||
=== 仕訳帳テーブル === | === 仕訳帳テーブル === | ||
− | |||
確認 | 確認 | ||
− | <nowiki> | + | <nowiki>=# select count(*) from journals; |
count | count | ||
------- | ------- | ||
− | + | 14709 | |
+ | (1 row)</nowiki> | ||
− | + | % rails generate scaffold Journal user:references note:references account:references client_id:integer other_id:integer journal_number:integer date:date schedule_id:integer debit:string debit_money:integer description_id:integer etc:string credit:string credit_money:integer debit_s:integer credit_s:integer | |
− | % | ||
− | + | % rails db:migrate | |
− | <nowiki>% | + | |
− | + | リストアして作業データベースにコピーする | |
− | + | <nowiki>% pg_dump --username=jq --table journals heroku_dump > ../new_journals.sql | |
− | + | % psql --username=jq update_heroku < ../new_journals.sql</nowiki> | |
− | |||
− | |||
− | |||
− | -- | ||
− | |||
− | |||
+ | テーブルの変更 | ||
+ | =# ALTER TABLE journals RENAME COLUMN jiin_id TO note_id; | ||
+ | |||
+ | 新テーブルのclient_idに合わせる | ||
+ | <nowiki>update_heroku=# update journals SET client_id = client_id + 20000 where note_id = 2; | ||
+ | UPDATE 3663 | ||
+ | update_heroku=# update journals SET client_id = client_id + 30000 where note_id = 3; | ||
+ | UPDATE 1815 | ||
+ | update_heroku=# update journals SET client_id = client_id + 40000 where note_id = 4; | ||
+ | UPDATE 719</nowiki> | ||
+ | |||
+ | リストア コピー | ||
+ | <nowiki>jq@MacBook-Pro tep5 % pg_dump --username=jq --table journals update_heroku > ../new_journals.sql | ||
+ | jq@MacBook-Pro tep5 % psql --username=jq tep5_development < ../new_journals.sql | ||
SET | SET | ||
SET | SET | ||
SET | SET | ||
− | SET | + | SET |
− | SET | + | SET |
− | + | set_config | |
− | + | ------------ | |
− | + | ||
− | + | (1 row) | |
− | |||
− | |||
− | |||
− | |||
− | + | SET | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | SET | ||
SET | SET | ||
SET | SET | ||
983行目: | 937行目: | ||
ALTER SEQUENCE | ALTER SEQUENCE | ||
ALTER TABLE | ALTER TABLE | ||
− | COPY | + | COPY 14709 |
setval | setval | ||
-------- | -------- | ||
− | + | 15023 | |
(1 row) | (1 row) | ||
ERROR: multiple primary keys for table "journals" are not allowed | ERROR: multiple primary keys for table "journals" are not allowed | ||
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | ERROR: relation "index_journals_on_user_id" already exists | + | ERROR: relation "index_journals_on_user_id" already exists |
− | ERROR: relation " | + | CREATE INDEX |
− | + | ERROR: relation "public.jiins" does not exist | |
− | + | ALTER TABLE</nowiki> | |
− | % pg_dump | + | |
+ | ダンプ ここまで形を整えたデータベースをバックアップしとく | ||
+ | % pg_dump tep5_development > ../202209270816_tep5.sql | ||
+ | |||
+ | ==== 替え玉 ==== | ||
+ | update_heroku=# insert into accounts(account_cd, content, bs_pl, debit_credit, created_at, updated_at) VALUES ('9999', '替え玉', 1, 1, '2022-09-28', '2022-09-28'); | ||
+ | tep5_development=# insert into accounts(account_cd, content, bs_pl, debit_credit, created_at, updated_at) VALUES ('9999', '替え玉', 1, 1, '2022-09-28', '2022-09-28'); | ||
− | |||
確認 | 確認 | ||
− | <nowiki>=# select count(*) from journals; | + | <nowiki>tep5_development=# select * from accounts order by id desc limit 1; |
+ | id | account_cd | content | bs_pl | debit_credit | created_at | updated_at | ||
+ | ----+------------+---------+-------+--------------+---------------------+--------------------- | ||
+ | 99 | 9999 | 替え玉 | 1 | 1 | 2022-09-28 00:00:00 | 2022-09-28 00:00:00 | ||
+ | (1 row)</nowiki> | ||
+ | |||
+ | <nowiki>update_heroku=# select count(*) from journals where account_id is null; | ||
count | count | ||
------- | ------- | ||
− | + | 10379 | |
(1 row)</nowiki> | (1 row)</nowiki> | ||
− | % rails generate scaffold | + | 替え玉挿入 |
+ | <nowiki>update_heroku=# update journals set account_id = 99 where account_id is null; | ||
+ | UPDATE 10379</nowiki> | ||
+ | |||
+ | === 摘要テーブル 変更あり === | ||
+ | 確認 | ||
+ | <nowiki>heroku_dump=# select count(*) from descriptions; | ||
+ | count | ||
+ | ------- | ||
+ | 640 | ||
+ | (1 row)</nowiki> | ||
+ | |||
+ | % rails generate scaffold Description user:references note:references account:references content:string money:integer desc_line:integer | ||
+ | |||
+ | (UUID削除 index追加) | ||
% rails db:migrate | % rails db:migrate | ||
リストアして作業データベースにコピーする | リストアして作業データベースにコピーする | ||
− | + | % pg_dump --username=jq --table descriptions heroku_dump > ../new_descriptions.sql | |
− | % psql --username=jq update_heroku < ../ | + | % psql --username=jq update_heroku < ../new_descriptions.sql |
テーブルの変更 | テーブルの変更 | ||
− | =# ALTER TABLE | + | =# ALTER TABLE descriptions RENAME COLUMN jiin_id TO note_id; |
− | + | リストア コピー | |
− | + | % pg_dump --username=jq --table descriptions update_heroku > ../new_descriptions.sql | |
− | + | <nowiki>% psql --username=jq tep5_development < ../new_descriptions.sql | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | リストア コピー | ||
− | |||
− | |||
SET | SET | ||
SET | SET | ||
1,049行目: | 1,020行目: | ||
SET | SET | ||
SET | SET | ||
− | ERROR: relation " | + | ERROR: relation "descriptions" already exists |
ALTER TABLE | ALTER TABLE | ||
− | ERROR: relation " | + | ERROR: relation "descriptions_id_seq" already exists |
ALTER TABLE | ALTER TABLE | ||
ALTER SEQUENCE | ALTER SEQUENCE | ||
ALTER TABLE | ALTER TABLE | ||
− | COPY | + | COPY 640 |
setval | setval | ||
-------- | -------- | ||
− | + | 871 | |
(1 row) | (1 row) | ||
− | ERROR: multiple primary keys for table " | + | ERROR: multiple primary keys for table "descriptions" are not allowed |
+ | ERROR: relation "index_descriptions_on_account_id" already exists | ||
CREATE INDEX | CREATE INDEX | ||
+ | ERROR: relation "index_descriptions_on_user_id" already exists | ||
CREATE INDEX | CREATE INDEX | ||
− | + | ALTER TABLE | |
− | + | ERROR: relation "public.jiins" does not exist</nowiki> | |
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | ERROR: relation "public.jiins" does not exist | ||
− | |||
ダンプ ここまで形を整えたデータベースをバックアップしとく | ダンプ ここまで形を整えたデータベースをバックアップしとく | ||
% pg_dump tep5_development > ../202209270816_tep5.sql | % pg_dump tep5_development > ../202209270816_tep5.sql | ||
− | ==== | + | === 戒名テーブル 変更あり === |
− | |||
− | |||
− | |||
確認 | 確認 | ||
− | <nowiki> | + | <nowiki>heroku_dump=# select count(*) from kaimyous; |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
count | count | ||
------- | ------- | ||
− | + | 3375 | |
(1 row)</nowiki> | (1 row)</nowiki> | ||
− | + | rails generate scaffold Kaimyou user:references note:references client:references other:references content:string birth:date death:date g_age:string relationship:string memo:text | |
− | |||
− | |||
− | + | (UUID削除 index追加) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | (UUID削除 index追加) | ||
% rails db:migrate | % rails db:migrate | ||
リストアして作業データベースにコピーする | リストアして作業データベースにコピーする | ||
− | % pg_dump --username=jq --table | + | % pg_dump --username=jq --table kaimyous heroku_dump > ../new_kaimyous.sql |
− | % psql --username=jq update_heroku < ../ | + | % psql --username=jq update_heroku < ../new_kaimyous.sql |
テーブルの変更 | テーブルの変更 | ||
− | =# ALTER TABLE | + | <nowiki>update_heroku=# ALTER TABLE kaimyous RENAME COLUMN jiin_id TO note_id; |
− | + | ALTER TABLE | |
− | + | update_heroku=# ALTER TABLE kaimyous RENAME COLUMN client_id TO other_id; | |
− | + | ALTER TABLE | |
− | + | update_heroku=# ALTER TABLE kaimyous RENAME COLUMN ie_id TO client_id; | |
− | + | ALTER TABLE | |
− | + | update_heroku=# ALTER TABLE kaimyous RENAME COLUMN date TO death; | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
ALTER TABLE | ALTER TABLE | ||
− | + | update_heroku=# ALTER TABLE kaimyous ADD COLUMN birth date; | |
ALTER TABLE | ALTER TABLE | ||
− | ALTER | + | update_heroku=# ALTER TABLE kaimyous DROP COLUMN ie_id_v; |
ALTER TABLE | ALTER TABLE | ||
− | + | update_heroku=# ALTER TABLE kaimyous ADD COLUMN memo text; | |
− | + | ALTER TABLE</nowiki> | |
− | |||
− | |||
− | |||
− | + | 新テーブルのclient_id other_idに合わせる other_idは一意なので変更しない | |
− | + | <nowiki>update_heroku=# update kaimyous SET client_id = client_id + 20000 where note_id = 2; | |
− | + | UPDATE 587 | |
− | + | update_heroku=# update kaimyous SET client_id = client_id + 30000 where note_id = 3; | |
− | + | UPDATE 662 | |
− | + | update_heroku=# update kaimyous SET client_id = client_id + 40000 where note_id = 4; | |
− | + | UPDATE 256</nowiki> | |
− | + | エラー clientsテーブルのidとkaimyousテーブルのclient_idを比較する | |
− | + | <nowiki>update_heroku=# SELECT id FROM clients | |
− | + | EXCEPT | |
− | + | SELECT client_id FROM kaimyous | |
− | + | UNION ALL | |
− | + | SELECT client_id FROM kaimyous | |
− | + | EXCEPT | |
− | + | SELECT id FROM clients order by id; | |
+ | id | ||
------- | ------- | ||
− | + | 21 | |
− | + | 27 | |
− | + | 35 | |
− | + | 38 | |
− | + | 39 | |
− | + | 44 | |
− | + | 46 | |
− | + | 56 | |
− | + | 57 | |
− | + | 63 | |
− | + | 71 | |
− | + | 73 | |
− | + | 78 | |
− | + | 89 | |
− | + | 101 | |
− | + | 106 | |
− | + | 111 | |
− | + | 126 | |
− | + | 127 | |
− | + | 135 | |
− | + | 144 | |
− | + | 147 | |
− | + | 156 | |
− | + | 173 | |
− | + | 174 | |
− | + | 176 | |
− | + | 186 | |
− | + | 188 | |
− | + | 189 | |
− | + | 230 | |
− | + | 310 | |
− | + | 373 | |
− | + | 404 | |
− | + | 473 | |
− | + | 701 | |
− | + | 804 | |
− | + | 872 | |
− | + | 936 | |
− | + | 953 | |
− | + | 972 | |
− | + | 998 | |
− | + | 1590 | |
− | + | 1671 | |
− | + | 1777 | |
+ | 2249 | ||
+ | 2290 | ||
+ | 22653 | ||
+ | 34681 | ||
+ | (48 rows)</nowiki> | ||
− | + | 書き出す | |
− | <nowiki>update_heroku | + | <nowiki>% psql update_heroku -c "SELECT id FROM clients |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
EXCEPT | EXCEPT | ||
− | SELECT client_id FROM kaimyous | + | SELECT client_id FROM kaimyous |
UNION ALL | UNION ALL | ||
− | SELECT client_id FROM kaimyous | + | SELECT client_id FROM kaimyous |
EXCEPT | EXCEPT | ||
− | SELECT id FROM clients order by id; | + | SELECT id FROM clients order by id;" > ../hikaku/clients_kaimyous_client_id.csv</nowiki> |
− | + | ||
− | + | ,挿入 改行削除 | |
− | + | :%s/\n//g | |
− | + | ||
− | + | 削除する戒名を書き出す | |
− | + | <nowiki>% psql update_heroku -c "select * from kaimyous where client_id in (21, 27, 35, 38, 39, 44, 46, 56, 57, 63, 71, 73, 78, 89, 101, 106, 111, 126, 127, 135, 144, 147, 156, 173, 174, 176, 186, 188, 189, 230, 310, 373, 404, 473, 701, 804, 872, 936, 953, 972, 998, 1590, 1671, 1777, 2249, 2290, 22653, 34681);" > ../tmp/delete_kaimyou.csv</nowiki> | |
− | + | ||
− | + | 削除 | |
− | + | <nowiki>update_heroku=# delete from kaimyous where client_id in (21, 27, 35, 38, 39, 44, 46, 56, 57, 63, 71, 73, 78, 89, 101, 106, 111, 126, 127, 135, 144, 147, 156, 173, 174, 176, 186, 188, 189, 230, 310, 373, 404, 473, 701, 804, 872, 936, 953, 972, 998, 1590, 1671, 1777, 2249, 2290, 22653, 34681); | |
− | + | DELETE 81</nowiki> | |
− | + | ||
− | + | ダンプ リストア | |
− | + | <nowiki>jq@MacBook-Pro tep5 % pg_dump --username=jq --table kaimyous update_heroku > ../new_kaimyous.sql | |
− | + | jq@MacBook-Pro tep5 % psql --username=jq tep5_development < ../new_kaimyous.sql | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | set_config | |
− | + | ------------ | |
− | + | ||
− | + | (1 row) | |
− | + | ||
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | ERROR: relation "kaimyous" already exists | |
− | + | ALTER TABLE | |
− | + | ERROR: relation "kaimyous_id_seq" already exists | |
− | + | ALTER TABLE | |
− | + | ALTER SEQUENCE | |
− | + | ALTER TABLE | |
− | + | COPY 3294 | |
− | + | setval | |
− | + | -------- | |
− | + | 4230 | |
− | + | (1 row) | |
− | + | ||
− | + | ERROR: multiple primary keys for table "kaimyous" are not allowed | |
− | + | ERROR: relation "index_kaimyous_on_client_id" already exists | |
− | + | ERROR: relation "index_kaimyous_on_client_id_and_content" already exists | |
− | + | ERROR: relation "index_kaimyous_on_date" already exists | |
− | + | ERROR: relation "index_kaimyous_on_ie_id" already exists | |
− | + | ERROR: relation "index_kaimyous_on_jiin_id" already exists | |
− | + | ERROR: relation "index_kaimyous_on_user_id" already exists | |
− | + | ERROR: relation "index_kaimyous_on_user_id_and_jiin_id" already exists | |
− | ( | + | ERROR: relation "public.jiins" does not exist</nowiki> |
+ | |||
+ | ダンプ ここまで形を整えたデータベースをバックアップしとく | ||
+ | % pg_dump tep5_development > ../202210031034_tep5.sql | ||
− | + | === 通帳テーブル === | |
− | <nowiki> | + | 確認 |
− | + | <nowiki>heroku_dump=# select count(*) from bankbooks; | |
− | + | count | |
− | + | ------- | |
− | + | 36</nowiki> | |
− | |||
− | |||
− | + | % rails generate scaffold Bankbook user:references note:references content:string memo:text | |
− | : | ||
− | + | やり直し | |
− | + | % rails destroy scaffold Bankbook user:references note:references content:string memo:text | |
+ | % rails generate scaffold Bankbook user:references note:references content:string bank_line:integer memo:text | ||
− | + | (UUID削除 index追加) | |
− | + | % rails db:migrate | |
− | |||
− | ダンプ リストア | + | リストアして作業データベースにコピーする |
− | <nowiki>jq@MacBook-Pro tep5 % pg_dump --username=jq --table | + | % pg_dump --username=jq --table bankbooks heroku_dump > ../new_bankbooks.sql |
− | jq@MacBook-Pro tep5 % psql --username=jq tep5_development < ../ | + | % psql --username=jq update_heroku < ../new_bankbooks.sql |
+ | |||
+ | テーブルの変更 | ||
+ | update_heroku=# ALTER TABLE bankbooks RENAME COLUMN jiin_id TO note_id; | ||
+ | ALTER TABLE | ||
+ | |||
+ | ダンプ リストア | ||
+ | <nowiki>jq@MacBook-Pro tep5 % pg_dump --username=jq --table bankbooks update_heroku > ../new_bankbooks.sql | ||
+ | jq@MacBook-Pro tep5 % psql --username=jq tep5_development < ../new_bankbooks.sql | ||
SET | SET | ||
SET | SET | ||
1,320行目: | 1,253行目: | ||
SET | SET | ||
SET | SET | ||
− | ERROR: relation " | + | ERROR: relation "bankbooks" already exists |
ALTER TABLE | ALTER TABLE | ||
− | ERROR: relation " | + | ERROR: relation "bankbooks_id_seq" already exists |
ALTER TABLE | ALTER TABLE | ||
ALTER SEQUENCE | ALTER SEQUENCE | ||
ALTER TABLE | ALTER TABLE | ||
− | COPY | + | COPY 36 |
setval | setval | ||
-------- | -------- | ||
− | + | 68 | |
(1 row) | (1 row) | ||
− | ERROR: multiple primary keys for table " | + | ERROR: multiple primary keys for table "bankbooks" are not allowed |
− | + | CREATE INDEX | |
− | + | ERROR: relation "index_bankbooks_on_user_id" already exists | |
− | + | CREATE INDEX | |
− | |||
− | |||
− | ERROR: relation " | ||
− | |||
ERROR: relation "public.jiins" does not exist</nowiki> | ERROR: relation "public.jiins" does not exist</nowiki> | ||
ダンプ ここまで形を整えたデータベースをバックアップしとく | ダンプ ここまで形を整えたデータベースをバックアップしとく | ||
− | % pg_dump tep5_development > ../ | + | % pg_dump tep5_development > ../202211021454_tep5.sql |
− | === | + | === relationshipsテーブル === |
確認 | 確認 | ||
− | <nowiki> | + | <nowiki>latest_dump=# select count(*) from relationships; |
count | count | ||
------- | ------- | ||
− | + | 40</nowiki> | |
− | % | + | relationshipsテーブル ダンプ |
+ | % pg_dump --username=jq --table relationships latest_dump > ../new_relationships.sql | ||
− | + | update_dumpデータベースにリストアしてロール列を削除する | |
− | % | + | % psql --username=jq update_dump < ../new_relationships.sql |
− | + | =# ALTER TABLE relationships DROP COLUMN role; | |
− | + | 修正したテーブルをダンプする | |
− | % | + | % pg_dump --username=jq --table relationships update_dump > ../relationships_dump.sql |
− | + | リストアする | |
− | + | % psql -d tep5_development < ../relationships_dump.sql | |
− | % psql - | ||
− | + | バックアップを取る -Fc カスタム形式 圧縮ファイル形式 | |
− | + | % pg_dump -Fc tep5_development > ../202212141027.dump | |
− | |||
− | + | == UUIDを有効にする == | |
− | + | === 設定 === | |
− | + | % rails generate migration enable_extension_for_uuid | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | migrate編集 | |
− | + | <nowiki>class EnableExtensionForUuid < ActiveRecord::Migration[7.0] | |
− | + | def change | |
− | + | enable_extension 'pgcrypto' unless extension_enabled?('pgcrypto') | |
− | + | end | |
− | + | end</nowiki> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | % rails db:migrate | |
− | |||
− | |||
− | |||
− | |||
− | + | デフォルトのキーをuuidにする | |
− | + | <nowiki>config/initializers/generators.rb 作成 | |
− | + | Rails.application.config.generators do |g| | |
− | + | g.orm :active_record, primary_key_type: :uuid | |
− | + | end</nowiki> | |
− | |||
− | |||
− | |||
− | + | === 途中からUUIDに変更する場合 === | |
− | % | + | migrationファイル追加 |
+ | <nowiki> % rails generate migration enable_extension_for_uuid | ||
− | + | % rails generate migration change_user_id_type_to_uuid | |
− | |||
− | |||
− | + | % rails destroy migration change_user_id_type_to_uuid | |
− | |||
− | + | % rails generate migration change_users_id_type_to_uuid | |
− | |||
− | + | % rails generate migration change_notes_id_type_to_uuid | |
− | |||
− | + | % rails generate migration change_lists_id_type_to_uuid | |
− | |||
− | |||
− | + | % rails generate migration change_clients_id_type_to_uuid | |
− | |||
− | + | % rails generate migration change_others_id_type_to_uuid</nowiki> | |
− | |||
− | + | === UUIDに変更したデータベースをDUMPする === | |
− | <nowiki> | + | ==== 修正した旧データのテーブルも一緒にDUMPしとく ==== |
− | + | ==== 不要なテーブルを削除し新しいUUIDのデータベースをDUMPする ==== | |
− | + | <nowiki>tep5_development=# drop table clients_old ; | |
− | + | DROP TABLE | |
− | + | tep5_development=# drop table jiins ; | |
− | + | DROP TABLE | |
+ | tep5_development=# drop table users_old ;</nowiki> | ||
− | + | % pg_dump tep5_development > tep5_uuid.sql | |
− | |||
− | + | == generate == | |
− | |||
− | + | $ rails generate scaffold User name:string email:string password_digest:string remember_digest:string role:integer activation_digest:string activated:boolean activated_at:datetime reset_digest:string reset_sent_at:datetime | |
− | |||
− | |||
− | + | {{font color||yellow|migrationファイルを確認 indexを書く 以下同じ}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | % rails | + | % rails generate scaffold Note user:references content:string kind:integer meeting_time:integer role:integer note_line:integer |
− | + | % rails generate scaffold List user:references note:references content:string list_line:integer | |
− | |||
− | + | % rails generate scaffold Client user:references note:references list:references content:string client_line:integer memo:text | |
− | |||
− | |||
− | + | % rails generate scaffold Other user:references note:references client:references name:string kana:string client_name:boolean other_line:integer memo:text generation:string | |
− | |||
− | |||
− | % rails generate | + | % rails generate scaffold Category user:references note:references content:string category_line:integer |
− | % rails | + | % rails generate scaffold Relationship_category user:references note:references client_id:integer category_id:integer |
− | % rails generate | + | % rails generate model Relationship follower_id:integer followed_id:integer |
− | + | $ rails generate controller Relationships | |
− | % rails | + | やり直し |
+ | % rails destroy scaffold User ................. | ||
− | + | $ rails generate scaffold Post content:text user:references picture:string | |
− | + | $ rails generate model Relationship follower_id:integer followed_id:integer | |
− | + | $ rails db:migrate RAILS_ENV=production | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | $ bin/dev | |
− | + | $ rails generate controller StaticPages home help about contact | |
− | + | エラー | |
+ | ActionView::Template::Error (The asset "tailwind.css" is not present in the asset pipeline. | ||
− | + | config/envitonments/production.rb | |
+ | config.assets.compile = true | ||
− | + | == サーバーへ転送 == | |
+ | 除外するファイルをまとめる | ||
+ | <nowiki>exclude-file.txt | ||
+ | production.rb | ||
+ | database.yml</nowiki> | ||
− | % | + | % rsync -r --delete --exclude-from='exclude-file.txt' ~/rails_app_tepnote/tep5/ jq:/home/jq/tep5/ |
− | % | + | % rsync ~/rails_app_tepnote/202210031034_tep5.sql jq:/home/jq/dump_data |
− | + | == サーバー側 == | |
+ | $ bundle install --without test development | ||
− | + | {{font color||yellow|database.yml username:などを確認する (2箇所)}} | |
− | + | /config/environments/production.rb | |
− | + | データベース削除 | |
+ | postgres=# DROP DATABASE tep5_production; | ||
− | $ | + | データベース作成 |
+ | $ createdb tep5_production | ||
− | + | リストア | |
− | + | <nowiki>$ psql tep5_production < ../dump_data/tep5_uuid_dump.sql | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | set_config | |
+ | ------------ | ||
+ | |||
+ | (1 row) | ||
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | SET | |
− | + | CREATE EXTENSION | |
− | + | COMMENT | |
− | + | SET | |
− | + | SET | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE TABLE | |
− | + | ALTER TABLE | |
− | + | COPY 1 | |
− | + | COPY 1295 | |
− | + | COPY 1 | |
− | + | COPY 14 | |
− | + | COPY 4747 | |
− | + | COPY 11 | |
− | + | COPY 17 | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | CREATE INDEX | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
− | + | ALTER TABLE | |
+ | ALTER TABLE</nowiki> | ||
− | + | $ rails db:migrate RAILS_ENV=production | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | $ rails db:migrate RAILS_ENV=production | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |