Переглянути джерело

fix(emailService): 修正nodemailer的createTransporter拼写错误

refactor(models): 将Contact模型重构为Sequelize的类形式
refactor(routes): 更新Contact模型的导入方式以匹配新结构
你的用户名 4 годин тому
батько
коміт
30a26dd3dc
3 змінених файлів з 39 додано та 22 видалено
  1. 37 20
      models/contact.js
  2. 1 1
      routes/contact.js
  3. 1 1
      utils/emailService.js

+ 37 - 20
models/contact.js

@@ -1,7 +1,21 @@
-const { DataTypes } = require('sequelize');
-const sequelize = require('./index').sequelize;
+'use strict';
+const {
+  Model
+} = require('sequelize');
 
-const Contact = sequelize.define('Contact', {
+module.exports = (sequelize, DataTypes) => {
+  class Contact extends Model {
+    /**
+     * Helper method for defining associations.
+     * This method is not a part of Sequelize lifecycle.
+     * The `models/index` file will call this method automatically.
+     */
+    static associate(models) {
+      // define association here
+    }
+  }
+  
+  Contact.init({
   id: {
     type: DataTypes.INTEGER,
     primaryKey: true,
@@ -50,20 +64,23 @@ const Contact = sequelize.define('Contact', {
     defaultValue: false,
     comment: '是否已发送邮件通知'
   }
-}, {
-  tableName: 'contacts',
-  timestamps: true,
-  indexes: [
-    {
-      fields: ['email']
-    },
-    {
-      fields: ['status']
-    },
-    {
-      fields: ['createdAt']
-    }
-  ]
-});
-
-module.exports = Contact;
+  }, {
+    sequelize,
+    modelName: 'Contact',
+    tableName: 'contacts',
+    timestamps: true,
+    indexes: [
+      {
+        fields: ['email']
+      },
+      {
+        fields: ['status']
+      },
+      {
+        fields: ['createdAt']
+      }
+    ]
+  });
+  
+  return Contact;
+};

+ 1 - 1
routes/contact.js

@@ -1,6 +1,6 @@
 const express = require('express');
 const router = express.Router();
-const Contact = require('../models/contact');
+const { Contact } = require('../models');
 const { sendContactNotification, sendAutoReply } = require('../utils/emailService');
 const { successResponse, errorResponse } = require('../utils/responese');
 

+ 1 - 1
utils/emailService.js

@@ -14,7 +14,7 @@ const emailConfig = {
 const receiverEmail = 'admin@yourcompany.com'; // 接收留言的邮箱
 
 // 创建邮件传输器
-const transporter = nodemailer.createTransporter(emailConfig);
+const transporter = nodemailer.createTransport(emailConfig);
 
 /**
  * 发送联系我们留言通知邮件