SvelteKit 프로젝트 생성
https://kit.svelte.dev/docs/creating-a-project
$npm create svelte@latest my-app$cdmy-app$npminstall$npm run dev
EdgeDB 설치
https://www.edgedb.com/docs/cli/index 를 봐도 되는데, 나는 그냥https://github.com/edgedb/homebrew-tap 보고 brew로 설치했음
$brewinstalledgedb/tap/edgedb-cli
EdgeDB 생성 및 실행
https://www.edgedb.com/docs/intro/projects#initializing
$edgedb project init$npx @edgedb/generate edgeql-js$edgedb ui
scheme 작성
dbschema/default.esdl
수정- 로그인을 위해 미리
using extension auth
추가했음
using extension auth;module default { type user { name: str; }}
migration 생성 및 적용
$edgedb migration create$edgedb migrate
이후 브라우저에서 user 테이블에 테스트 사용자 추가
프로젝트에 EdgeDB 연결
https://www.npmjs.com/package/edgedb
$npm i edgedb
app.d.ts
설정
import{Client}from"edgedb";declareglobal{namespaceApp{interfaceLocals{db:Client;}}}export{};
hooks.server.js
설정
import*asedgedbfrom"edgedb";exportconsthandle=async({event,resolve})=>{constclient=edgedb.createClient();event.locals.db=client;returnresolve(event,{filterSerializedResponseHeaders(name){returnname==="content-range";}});};
user 정보 가져오기
page.server.js
수정
exportasyncfunctionload({locals}){constuser=awaitlocals.db.query("select user { id, name }");return{user};}
orm을 사용하고 싶다면https://www.edgedb.com/docs/clients/js/index 참고
auth 사용하기
Top comments(0)
Subscribe
For further actions, you may consider blocking this person and/orreporting abuse