Think.js 配置數據庫

Think.js 配置數據庫


方法
準備工做

擴展模型功能
Think.js 框架默認沒有提供模型的功能,須要加載對應的擴展才能支持,對應的模塊爲 think-model。修改擴展的配置文件 src/config/extend.js,添加以下的配置mysql

// 添加模型的擴展
    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 文件sql

// 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 內配置app

// 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
     }
    };
相關文章
相關標籤/搜索