小编Eri*_*Ven的帖子

在 Sequelize JS 中禁用主键

有没有办法禁用 Sequelize JS 中自动生成的主键?

我们使用 Sequelize 的同步方法在 PostgreSQL 中创建表。但是我们的联结表有一个问题......我们不希望联结表中有主键,但是如果我们自己不指定主键,Sequelize 会自动生成一个主键。我可以在所有列上指定主键,但这不是最好的方法......

谁知道如何禁用 Sequelize JS 中的主键?

javascript postgresql sequelize.js

4
推荐指数
1
解决办法
4397
查看次数

无法通过 ID 访问特定顶点,在 Gremlin 控制台中使用 TinkerGraph

我无法通过执行来选择特定顶点g.V(3640).valueMap(true).unfold()。任何在命令中的括号之间包含 ID 的命令g.V()似乎都不起作用。

这就是我所做的:

我是图形数据库新手,正在尝试使用 Gremlin 控制台。我首先创建一个实例:

graph = TinkerGraph.open()
g=graph.traversal()
Run Code Online (Sandbox Code Playgroud)

并通过导入数据库文件加载示例数据.graphml

g.io(graphml()).readGraph('/full/path/to/air-routes-latest.graphml')
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常,因为计数给出了很好的结果

gremlin> g.V().count()
==>3642
Run Code Online (Sandbox Code Playgroud)

不幸的是,以下内容不起作用:

gremlin> g.V(3640).valueMap(true).unfold()
Run Code Online (Sandbox Code Playgroud)

我认为这很奇怪,因为通过执行以下命令

gremlin> g.V()
==>v[3640]
==>v[2306]
...
Run Code Online (Sandbox Code Playgroud)

该 ID 似乎确实存在。为什么我无法访问特定 ID,有什么想法吗?我尝试了不同的命令,但g.V()似乎工作正常,但g.V(3640)事实并非如此。是否因为我使用 TinkerGraph 而不是 Gremlin 数据库,可能会出现什么问题?

编辑:

看来我的 id 被保存为字符串,因为g.V("2").valueMap(true).unfold()确实给了我结果。

graph gremlin tinkergraph tinkerpop3

3
推荐指数
1
解决办法
1129
查看次数

Sequelize不会创建外键作为约束

我们正在尝试使用Sequelize在PostgreSQL内部自动创建表。不幸的是,它没有创建外键作为约束。这是我的一个模型的示例:

module.exports = function(schema, DataTypes) {

    var definition = {
        id: {
            type: DataTypes.INTEGER,
            primaryKey: true,
            autoIncrement: true
        },
        deal_id: {
            type: DataTypes.INTEGER
        },
        image: DataTypes.STRING,
    };


    var image = schema.define('Image', definition, {
        tableName: 'images', // this will define the table's name
        timestamps: false, // this will deactivate the timestamp columns
        syncOnAssociation: true,

        classMethods: {
            getDefinition: function() {
                return definition;
            },
            associate: function(_models) {
                image.belongsTo(_models.Product, {
                    foreignKey: 'deal_id'
                });
            }
        }
    });

    return image;
};
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?

postgresql sequelize.js

2
推荐指数
1
解决办法
3237
查看次数

array_column包含一个对象数组

TLDR; 我的问题与PHP不同.是否可以将array_column与对象数组一起使用.我只想更改数组中的键并保留对象,而不是将对象的值存储在单独的数组中,如给定的答案.

我想将具有对象的数组的键设置为对象的值.所以这个数组:

$array = Array
(
    [0] => stdClass Object
        (
            [id] = 12234
            [value] = some value
        )

    [1] => stdClass Object
        (
            [id] = 12994
            [value] = some value
        )

)
Run Code Online (Sandbox Code Playgroud)

应该成为:

$array = Array
(
    [12234] => stdClass Object
        (
            [id] = 12234
            [value] = some value
        )

    [12994] => stdClass Object
        (
            [id] = 12994
            [value] = some value
        )

)
Run Code Online (Sandbox Code Playgroud)

现在我可以遍历阵列,但我更喜欢更清洁的解决方案.我认为这应该有效:

$newArray = array_column($array, null, 'id');
Run Code Online (Sandbox Code Playgroud)

唯一的问题是我有一个对象数组而不是数组数组,我还没有使用PHP7.现在我在PHP上发现了一个类似的问题 …

php arrays

2
推荐指数
1
解决办法
1816
查看次数

Famo.us连接到MySQL

我正在尝试通过Famo.us连接MySQL数据库.但我无法完成它.该应用程序的文件夹结构如下所示:

  • 应用程序(实际上famo.us应用程序)
    • 内容(图像等)
    • LIB
    • SRC
      • main.js(实际应用)
      • requireConfig.js
    • 款式
    • 咕噜
    • node_modules

main.js

/*globals define*/
define(function(require, exports, module) {
    'use strict';
    // import dependencies
    var Engine = require('famous/core/Engine');
    var ImageSurface = require('famous/surfaces/ImageSurface');
    var StateModifier = require('famous/modifiers/StateModifier');

    // create the main context
    var mainContext = Engine.createContext();

    // your app here
    var logo = new ImageSurface({
        size: [200, 200],
        content: '/content/images/famous_logo.png'
    });

    var logoModifier = new StateModifier({
        origin: [0.5, 0.5]
    });

    mainContext.add(logoModifier).add(logo);
});
Run Code Online (Sandbox Code Playgroud)

因为它在节点上运行我试图成功地在node_modules文件夹中安装mysql node_module.但我无法连接到它,因为如果我尝试在main.js中要求mysql with require('mysql'),它认为我想从src文件夹中尝试一个js文件.我不能直接指向node_modules文件夹,因为它也给我一个404错误,根据famo.us'文档,它不是这样做的.

所以我试着用这种方式将mysql代码添加到main.js,但它也没有工作:mysql node:

require(['mysql'], function(mysql) {
    //foo and …
Run Code Online (Sandbox Code Playgroud)

mysql node.js requirejs famo.us

0
推荐指数
1
解决办法
688
查看次数