Showing
4 changed files
with
29 additions
and
0 deletions
... | @@ -3,6 +3,7 @@ import app from "./app"; // app.js에서 export default app했기 때문에 불 | ... | @@ -3,6 +3,7 @@ import app from "./app"; // app.js에서 export default app했기 때문에 불 |
3 | import "./db"; | 3 | import "./db"; |
4 | import "./models/Video"; | 4 | import "./models/Video"; |
5 | import "./models/Comment"; | 5 | import "./models/Comment"; |
6 | +import "./models/User"; | ||
6 | 7 | ||
7 | dotenv.config(); | 8 | dotenv.config(); |
8 | 9 | ... | ... |
models/User.js
0 → 100644
1 | +import mongoose from "mongoose"; | ||
2 | +import passportLocalMongoose from "passport-local-mongoose"; | ||
3 | + | ||
4 | +const UserSchema = new mongoose.Schema({ | ||
5 | + name: String, | ||
6 | + email: String, | ||
7 | + avatarUrl: String, | ||
8 | + facebookId: Number, | ||
9 | + githubId: Number, | ||
10 | +}); | ||
11 | +// 이 상태에서 새로운 스키마를 추가한다. | ||
12 | +// passportLocalMongoose는 configuration object가 필요하다. | ||
13 | +// passportLocalMongoose의 옵션에 usernameField가 있다. 이는 username이 될 field를 명시해준다. | ||
14 | +// passportLocalMongoose에게 어떤 Field를 username으로 사용할 것인지 알려줘야 한다. | ||
15 | +// usernameField로 이메일을 사용하기로 하겠다. | ||
16 | +UserSchema.plugin(passportLocalMongoose, { usernameField: "email" }); | ||
17 | + | ||
18 | +const model = mongoose.model("User", UserSchema); | ||
19 | +export default model; |
... | @@ -32,6 +32,9 @@ | ... | @@ -32,6 +32,9 @@ |
32 | "morgan": "^1.10.0", | 32 | "morgan": "^1.10.0", |
33 | "multer": "^1.4.2", | 33 | "multer": "^1.4.2", |
34 | "node-sass": "^4.14.1", | 34 | "node-sass": "^4.14.1", |
35 | + "passport": "^0.4.1", | ||
36 | + "passport-local": "^1.0.0", | ||
37 | + "passport-local-mongoose": "^6.0.1", | ||
35 | "postcss-loader": "^3.0.0", | 38 | "postcss-loader": "^3.0.0", |
36 | "pug": "^2.0.4", | 39 | "pug": "^2.0.4", |
37 | "sass-loader": "^8.0.2", | 40 | "sass-loader": "^8.0.2", | ... | ... |
-
Please register or login to post a comment