续集

时间:2018-02-07 22:32:49

标签: javascript sql postgresql sequelize.js

我已经阅读了所有文档并用谷歌搜索了一下,我仍然无法弄清楚这一点。我正在尝试设置一个数据库,允许用户创建一个事件/活动并为其分配多个标签(室内,食物,早餐)以对事件进行分类。我正在使用postgres和sequelize。我也不确定如何查询这些事件。我会使用app.get吗?

目前我有一个活动表,一个标签表和一个第三个连接表。

标签表:

'use strict';
module.exports = (sequelize, DataTypes) => {
  var Tag = sequelize.define('Tag', {
    title: DataTypes.STRING
  }, {
    classMethods: {
      associate: function(models) {
        Tag.hasMany(models.Activity, { through: models.ActivityTag, foreignKey: 'tag_id' });
      }
    }
  });
  return Tag;
};

活动表:

'use strict';
module.exports = (sequelize, DataTypes) => {
  var Activity = sequelize.define('Activity', {
    description: DataTypes.STRING,
    location: DataTypes.STRING,
    title: DataTypes.STRING,
    cost: DataTypes.INTEGER
  }, {
    classMethods: {
      associate: function(models) {
        console.log(models);
        Activity.belongsToMany(models.Tag, {as: 'activity' through: models.ActivityTag, foreignKey: 'activity_id' });

      }
    }
  });
  return Activity;
};

加入表:

'use strict';
module.exports = (sequelize, DataTypes) => {
  var ActivityTag = sequelize.define('ActivityTag', {
    activity_id: DataTypes.INTEGER,
    tag_id: DataTypes.INTEGER
  }, {
    classMethods: {
      associate: function(models) {

      }
    }
  });
  return ActivityTag;
};

0 个答案:

没有答案