老樣子先建立個 DB 資料表
npx wrangler d1 migrations create problytic-common create_share_datas_stats
裡面的內容寫
CREATE TABLE share_datas_stats (
id INTEGER PRIMARY KEY AUTOINCREMENT,
user_id BIGINT NOT NULL,
monsters_id VARCHAR(128) NOT NULL,
monsters_name VARCHAR(512) NOT NULL,
monsters_drop_id VARCHAR(128) NOT NULL,
monsters_drop_name VARCHAR(512) NOT NULL,
ref_number BIGINT NOT NULL,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES client_users(id) ON DELETE CASCADE
);
裡面的內容其實我很掙扎,到底要不要複雜化?還是一張表搞定就好
但我覺得就先一張表搞定吧,不要過度最佳化
我們執行遷移
npx wrangler d1 migrations apply problytic-common --local
最後加上 API
import type { RequestHandler } from './$types';
export const POST: RequestHandler = async ({ request, platform, locals }) => {
const user_id = locals.userId;
if (user_id) {
const { monsters_id, monsters_name, monsters_drop_id, monsters_drop_name, ref_number } =
await request.json();
const insert_stmt = await platform.env.DB.prepare(
'INSERT INTO share_datas_stats(user_id, monsters_id,monsters_name,monsters_drop_id,monsters_drop_name,ref_number) VALUES (?, ?,?,?,?,?)'
);
await insert_stmt
.bind(user_id, monsters_id, monsters_name, monsters_drop_id, monsters_drop_name, ref_number)
.run();
return new Response(JSON.stringify({ message: 'Register success' }), { status: 201 });
}
return new Response(JSON.stringify({ message: 'need login' }), { status: 404 });
};
今天的情緒抒發:
我覺得做這種全端框架的人好猛喔,任何資料的交換都要清楚欸,到底哪些是前哪些是後都要清楚