okay this is ridiculous but i guess i figured it out
okay this is ridiculous but i guess i figured it out
getRequestContext for next on pages, idk how you haven't stumbled upon itgetRequestContext is for prod environment specifically, but it also should work on local if im not mistaken.env getRequestContext().env and couple of other cloudflare related things, such as city and country of the request origin

4/6/24, 2:08 PM
near "SET": syntax error at offset 196 [code: 7500]wrangler d1 execute 10Database --file=database.sql

npx prisma migrate diff --script --from-empty --to-schema-datamodel ./prisma/schema.prisma >> migrations/0001_init.sqlnpx prisma migrate diff --from-local-d1 --to-schema-datamodel="./prisma/schema.prisma" >> migrations/0002_init.sql
sqlite3 db.sqlite < db.sqlsqlite3.exe db.sqlite .dump > db2.sql3/30/24, 5:08 PM
getRequestContextgetRequestContext.envgetRequestContext().envnear "SET": syntax error at offset 196 [code: 7500]wrangler d1 execute 10Database --file=database.sqlnpx prisma migrate diff --script --from-empty --to-schema-datamodel ./prisma/schema.prisma >> migrations/0001_init.sqlnpx prisma migrate diff --from-local-d1 --to-schema-datamodel="./prisma/schema.prisma" >> migrations/0002_init.sqlsqlite3 db.sqlite < db.sqlsqlite3.exe db.sqlite .dump > db2.sqlexport const updateMembers = async (db: dbType, membersObjs: z.infer<typeof insertMemberSchema>[]) => {
const batchResponse = await db.batch([
db.delete(members),
...membersObjs.map((member) => {
return db.insert(members).values(member)
})
])
return batchResponse
}export const updateMembers = async (db: dbType, membersObjs: z.infer<typeof insertMemberSchema>[]) => {
const BATCH_SIZE = 10; // Define an appropriate batch size
const insertOps = chunkArray(membersObjs, BATCH_SIZE).map((batch) => {
return db.insert(members).values(batch)
})
const batchResponse = await db.batch([
db.delete(members),
...insertOps
])
return batchResponse
}addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request));
});
async function handleRequest(request) {
if (request.method === 'POST') {
// Parse form data from the request
const formData = await request.formData();
const user = formData.get('User');
const quote = formData.get('Quote');
const date = parseInt(formData.get('date'));
const visibility = parseInt(formData.get('visibility'));
// Send data to D1 database
const response = await fetch('https://quote.logozip18.workers.dev/', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'POST',
'Access-Control-Allow-Headers': 'Content-Type',
},
body: JSON.stringify({ user, quote, date, visibility }),
});
if (response.ok) {
return new Response('Data submitted successfully!', { status: 200 });
} else {
return new Response('Error submitting data to database', { status: 500 });
}
} else {
return new Response('Method not allowed', { status: 405 });
}
}