From 5e02abc95cc8419b378917d7053d63092046b2cf Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 14 Jun 2020 16:34:42 +0800 Subject: Many many bugs fix. 1. Add a way to test front end with mock page. 2. Unknown api returns 400 but not frontend page. 3. Fix a big bug that cause all data loss in database migration. --- .../20200614061237_AddTimelineUniqueId.cs | 47 +++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) (limited to 'Timeline/Migrations/20200614061237_AddTimelineUniqueId.cs') diff --git a/Timeline/Migrations/20200614061237_AddTimelineUniqueId.cs b/Timeline/Migrations/20200614061237_AddTimelineUniqueId.cs index 80e90dbf..1fc3de18 100644 --- a/Timeline/Migrations/20200614061237_AddTimelineUniqueId.cs +++ b/Timeline/Migrations/20200614061237_AddTimelineUniqueId.cs @@ -9,6 +9,8 @@ namespace Timeline.Migrations migrationBuilder.Sql( @" ALTER TABLE timelines RENAME TO timelines_backup; +ALTER TABLE timeline_members RENAME TO timeline_members_backup; +ALTER TABLE timeline_posts RENAME TO timeline_posts_backup; CREATE TABLE timelines ( id INTEGER NOT NULL CONSTRAINT PK_timelines PRIMARY KEY AUTOINCREMENT, @@ -21,10 +23,53 @@ CREATE TABLE timelines ( CONSTRAINT FK_timelines_users_owner FOREIGN KEY (owner) REFERENCES users (id) ON DELETE CASCADE ); +CREATE TABLE timeline_members ( + id INTEGER NOT NULL + CONSTRAINT PK_timeline_members PRIMARY KEY AUTOINCREMENT, + user INTEGER NOT NULL, + timeline INTEGER NOT NULL, + CONSTRAINT FK_timeline_members_timelines_timeline FOREIGN KEY ( + timeline + ) + REFERENCES timelines (id) ON DELETE CASCADE, + CONSTRAINT FK_timeline_members_users_user FOREIGN KEY ( + user + ) + REFERENCES users (id) ON DELETE CASCADE +); + +CREATE TABLE timeline_posts ( + id INTEGER NOT NULL + CONSTRAINT PK_timeline_posts PRIMARY KEY AUTOINCREMENT, + timeline INTEGER NOT NULL, + author INTEGER NOT NULL, + content TEXT, + time TEXT NOT NULL, + last_updated TEXT NOT NULL, + local_id INTEGER NOT NULL + DEFAULT 0, + content_type TEXT NOT NULL + DEFAULT '', + extra_content TEXT, + CONSTRAINT FK_timeline_posts_users_author FOREIGN KEY ( + author + ) + REFERENCES users (id) ON DELETE CASCADE, + CONSTRAINT FK_timeline_posts_timelines_timeline FOREIGN KEY ( + timeline + ) + REFERENCES timelines (id) ON DELETE CASCADE +); + + INSERT INTO timelines (id, name, description, owner, visibility, create_time) SELECT id, name, description, owner, visibility, create_time FROM timelines_backup; - +INSERT INTO timeline_members SELECT * FROM timeline_members_backup; +INSERT INTO timeline_posts SELECT * FROM timeline_posts_backup; + DROP TABLE timelines_backup; +DROP TABLE timeline_members_backup; +DROP TABLE timeline_posts_backup; " ); } -- cgit v1.2.3