편지 컬렉션
import { Schema, model } from 'mongoose';
interface Letter {
id: string;
email: string;
name: string;
content: string;
reply: string;
createdAt: Date;
}
// 스키마 정의: Letter Schema
const LetterSchema = new Schema<Letter>(
{
id: {
type: String,
required: true,
unique: true,
},
email: {
type: String,
required: true,
unique: true,
},
name: {
type: String,
required: true,
},
content: {
type: String,
required: true,
},
reply: {
type: String,
required: true,
},
createdAt: {
type: Date,
required: true,
},
},
{
timestamps: true, // 생성 및 수정 일자 자동 기록
}
);
const LetterModel = models.Letters || model<Letter>('Letters', LetterSchema);
export { LetterModel };
export type { Letter };
이메일 인증 스키마
const EmailVerificationSchema = new Schema<EmailVerification>({
email: {
type: String,
required: true,
unique: true,
},
verificationToken: {
type: String,
required: true,
unique: true,
},
isVerified: {
type: Boolean,
required: true,
},
createdAt: {
type: Date,
required: true,
},
});