-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: Add tables and change table name #56
Conversation
courseId String | ||
programId String | ||
languageId String | ||
problemVariables ProblemVariable[] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SQliteを利用している場合、Json型はサポート外のようでした。
https://www.prisma.io/docs/orm/overview/databases/sqlite#native-type-mapping-from-prisma-orm-to-sqlite
Int[]
も使えなかったので、別テーブルにしてみました。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
JSON対応していないんですね👀
別テーブル化よさそうです!
一つの案としてString型でJSONを保持しておいて、使うときにパースするのもありかも? 今後時間はかかりそうですがJSON型がサポートされる可能性があるので、その際には移行も楽になるのかもなど思いました!
value Int | ||
} | ||
|
||
model UserCompletedProblem { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
口頭で話した際は UserCompletedProblems (旧UserSolvedProblem)は一旦作らないとしていましたが、migrationだけのPRをつくりやすい(消してしまうと進捗表示などの部分に手を入れる必要がある)ので残しています。
UserCompletedProblems が不要ということになれば、その際に対応したいと思います。
userProblemSessionId Int | ||
|
||
position Int |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
シンプルな仕組みなので使うことはすくないかもしれませんが、この二つの複合キーでユニーク制約があると安心かもです!
以下のissue対応に必要なテーブルの作成、テーブル名の変更を行いました。
Self Check
All checks have passed
on PR page. (You may leave this box unchecked due to long workflows.)WIP:
.yarn test
) is passed.yarn lint
) is passed.