Think.js 配置数据库

Think.js 配置数据库


方法
准备工作

扩展模型功能
Think.js 框架默认没有提供模型的功能,需要加载对应的扩展才能支持,对应的模块为 think-model。修改扩展的配置文件 src/config/extend.js,添加如下的配置

    // 添加模型的扩展
    const model = require('think-model');
    // 让框架支持模型的功能
    module.exports = [
    model(think.app) 
    ]
添加模型的扩展后,会添加方法 think.Model、think.model、ctx.model、controller.model、service.model。

1.在 Thinkjs 项目下,配置 src/config/adapter.js 文件

    // adapter.js
    // 引用database.js
    const database = require('./database.js');
    ...
    exports.model = {
      type: 'mysql',
      common: {
      logConnect: isDev,
      logSql: isDev,
      logger: msg => think.logger.info(msg)
     },
     mysql: database
     };

2.在 Thinkjs 项目下,配置 src/config/database.js 文件

    // database.js
    module.exports = {
      handle: mysql,
      database: 'think', // database_name
      prefix: 'think_', // database_table 前缀
      encoding: 'utf8mb4',
      host: '127.0.0.1', // Your MySQL host
      port: '3306', // Your MySQL port
      user: '',
      password: '',
      dateStrings: true
    };

或者直接在 adapter.js 内配置

    // adapter.js
    const mysql = require('think-model-mysql');
    ...
    exports.model = {
      type: 'mysql',
      common: {
      logConnect: isDev,
      logSql: isDev,
      logger: msg => think.logger.info(msg)
     },
     mysql: {
     handle: mysql,
      database: 'think', // database_name
      prefix: 'think_', // database_table 前缀
      encoding: 'utf8mb4',
      host: '127.0.0.1', // Your MySQL host
      port: '3306', // Your MySQL port
      user: '',
      password: '',
      dateStrings: true
     }
    };

你可能感兴趣的:(后端,thinkjs,mysql)