美文网首页electron-vue
三、sqlite3 + sequelize 安装

三、sqlite3 + sequelize 安装

作者: Su_yj | 来源:发表于2020-11-05 09:55 被阅读0次

    在开始之前,需要安装node-gypwindows-build-tools,具体安装方法请参照:
    Windows:https://zhuanlan.zhihu.com/p/109694358
    MacOS:https://zhuanlan.zhihu.com/p/109886978

    但是这里说明一些,在安装node-gypwindows-build-tools这两个包的时候,必须首先要有python 2.7,这里是重点!!!
    我在安装时候Python版本是3.x的,在执行编译的时候会报错,这东西是用Python2写的,到今天还没兼容到Python3,也不知道会不会做python3的兼容。
    另外,如果下载慢的话,可以使用淘宝源加速下载。

    1. sqlite3 安装

    如果想使用sequelize来操作sqlite3的话,前提还是需要先安装sqlite3,具体操作:

    npm install sqlite3 --save
    

    没记错的话,下载完后会使用到刚才的两个依赖进行编译,所以必须要先安装成功刚才的依赖包。

    2. sequelize 安装

    到这里,sequelize的安装就简单了,直接一个命令就可以了

    npm install --save sequelize
    

    但是这里如果用sequelize来操作sqlite3的话,我按照sequelize官网的教程发现是不行的(不保证其他人是不是这样),安装官网给的配置,这里还需要额外加多一个参数给它,配置如下:

    import { Sequelize } from 'sequelize'
    import sqlite3 from 'sqlite3'
    
    const sequelize = new Sequelize('database', null, null, {
      dialect: 'sqlite', // 这里写上去了没什么用,仅仅是为了告诉sequelize要使用什么数据库而已,但是sequelize貌似不会自己查询操作的模块
      storage: './database.db',
      define: {
        timestamps: false,
        freezeTableName: true
      },
      dialectModule: sqlite3 // 就是这里,必须要指明使用哪个模块来操作,否则是会报错了
    })
    

    具体的配置及使用可参考:https://github.com/Su-yj/class_manage/tree/main/src/db ,其中sequelize.js为数据库连接的配置文件,models.js是orm模型

    但奇怪的一点是,我使用electron的快速启动模板,不加上dialectModule: sqlite3这句话是没有问题的。具体原因我就没有去深究了。

    另外,如果报错说没有pg-hstore或者aws-sdk的模块,可以尝试在webpack的配置文件中加上

    ...
        externals: {
          'pg-hstore': 'pg-hstore',
          'aws-sdk': 'aws-sdk'
        }
    ...
    

    具体可以查看https://github.com/Su-yj/class_manage/blob/main/vue.config.js
    如果还是报错,那就安装一下吧,也没什么大不了的,哎~~~

    未完。。。

    相关文章

      网友评论

        本文标题:三、sqlite3 + sequelize 安装

        本文链接:https://www.haomeiwen.com/subject/rikovktx.html