簡體   English   中英

將 Sequelize 連接到使用 Homebrew 安裝的 Postgres

[英]Connecting Sequelize to Postgres installed with Homebrew

我正在嘗試使用Sequelize連接到我本地安裝的 Postgres。 我通過Homebrew安裝了它,並確認我可以很好地連接和查詢數據庫。 當我運行 Sequelize 時,它​​會輸出有效查詢(我通過控制台運行它們),但數據庫不會更改,也不會記錄任何連接。 我目前的代碼是:

var sequelize = new Sequelize('reliable_rabbit', 'mohammad', null, {
  host: "127.0.0.1",
  dialect: 'postgres',
  define: { timestamps: true, paranoid: true, underscore: true }//,
});

我可以通過以下方式連接到數據庫: psql -d reliable_rabbit -U mohammad -h 127.0.0.1 我正在使用 Sequelize 的1.5.0-beta

編輯:

在我的入口點 (app/app.js) 中,什么也不記錄:

var models = require('./models');
models.Post.sync().success(function(){
  console.log("Success!")
}).error(function(error){
  console.log("Error: " + error);
});

應用程序/models.js:

var Sequelize = require("sequelize")

var sequelize = new Sequelize('reliable_rabbit', 'mohammad', null, {
  host: "127.0.0.1",
  logging: console.log,
  dialect: 'postgres',
  define: { timestamps: true, paranoid: true, underscore: true }//,
});
exports.Post = require("../models/post")(sequelize);

最后是模型/post.js:

var Sequelize = 要求(“續集”);

module.exports = function(sequelize) {
  return sequelize.define('post', {
    title: { type: Sequelize.STRING, validate: { notEmpty: true } },
    permalink: { type: Sequelize.STRING, validate: { is: ["^[a-z]+[a-z\-][a-z]+$"] } },
    content: { type: Sequelize.TEXT, validate: { notEmpty: true } },
    published: { type: Sequelize.BOOLEAN, defaultValue: false },
    published_at: { type: Sequelize.DATE }
  },{
    instanceMethods: {
      generatePermalink: function() {
        this.permalink = this.title.toLowerCase().replace(/[^a-z]/g, "-").replace(/^-+|-+$/g,'').replace(/\-{2,}/g, '-');
      }
    }
  });
};

首先,我建議使用sequelize.import 此外,我想知道您是否可能只是忘記同步數據庫? 如果您需要有關這些事情的更多詳細信息,請告訴我:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM