6

我在 Sails.js 中制作了一个 JS 记录器应用程序,一切看起来都很棒。现在,我正在扩展应用程序:我需要为同一个模型使用多个表(例如,session1 sesson2基于 id 的表用于 etc)。

假设对于模型“Pageview”,我将使用不同的表,例如“Pageview1”、“Pageview2”等。

我如何动态定义该模型的 tableName,以便我可以根据参数或属性在每个请求上更改它。

到目前为止,我已经尝试过这种方式

var tableId = 2;
Pageview.tableName = "pageview" + tableId;
Pageview.create(values, function...);

该代码不会破坏应用程序,也不会引发任何错误,但记录保存在默认表上,而不是我想要的表上。

4

1 回答 1

0

我认为不可能这样做,但是当我读到这个时

我认为您可以使用自定义格式来动态定义表名。

如果您使用自动增量主键向表中插入一行,您可以像这样检索插入 ID:

connection.query('INSERT INTO posts SET ?', {title: 'test'}, function(err, result) {
  if (err) throw err;

  console.log(result.insertId);
});

如果这对 rows 有效,那么它可能对表有效。

于 2014-11-23T14:56:26.873 回答