• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

안녕하세요 선생님!

21.04.23 02:20 작성 조회수 156

0

response 로그를 찍어보면 email이 잘 들어있는데 notNull Violation: User.email cannot be null 에러가 뜨는 이유가 궁금합니다 선생님!

답변 5

·

답변을 작성해보세요.

0

슛돌이님의 프로필

슛돌이

질문자

2021.04.29

라우터 부분 코드도 추가했습니다!

0

슛돌이님의 프로필

슛돌이

질문자

2021.04.29

const express = require('express');
const db = require('./models');
const cors = require('cors');

const app = express();

db.sequelize.sync();

app.use(express.json());
app.use(cors({
origin: 'http://localhost:3000',
credentials: true,
}));

app.get('/', (req, res) => {
res.send('hello backend')
})

app.post('/user', async (req, res, next) => {
try {
console.log(req.body)
const newUser = await db.User.create({
where: {
email : req.body.email,
password : req.body.password,
nickname : req.body.nickname,
}
});
res.status(201).json(newUser);
} catch (err) {
console.log(err);
next(err);
}
})

app.listen(3085, () => {
console.log('backend server on ${3085} port')
})




0

슛돌이님의 프로필

슛돌이

질문자

2021.04.29

워크벤치에서도 테이블이 보이지 않습니다!

테이블이 안 보이는 것은 워크벤치 커넥션을 잘못 맺으신 것 같기도 하고요. 일단 SCHEMAS 아이콘 오른쪽에 새로고침 아이콘 눌러보세요.

슛돌이님의 프로필

슛돌이

질문자

2021.04.30

네 선생님

0

슛돌이님의 프로필

슛돌이

질문자

2021.04.29

안녕하세요 선생님 violation error 는 해결을 했는데요 ㅠ! 

이렇게 body는 잘 들어간 것을 확인했으나 

mysql 에서는 null로 들어가있네요 원인을 알 수 있을까요~? 

스키마 정의하는 부분 코드입니다. 

module.exports = (sequelize, DataTypes) => {
const User = sequelize.define('User', {
email: {
type: DataTypes.STRING(40), // 40자 이내
unique: false, // 중복금지
},
nickname: {
type: DataTypes.STRING(20),
unique: false, // 중복금지
},
password: {
type: DataTypes.STRING(100),
unique: false, // 중복금지
},
}, {
charset: 'utf8',
collate: 'utf8_general_ci', // 한글 저장돼요
});
User.associate = (db) => {
// db.User.hasMany(db.Post);
// db.User.hasMany(db.Comment);
};
return User;
};

0

서버 라우터 코드 보여주세요. email 넣을 때 오타 있는 것 같습니다.