2013-10-16 11 views
6

私はSails.jsでJSロガーアプリケーションを作成しました。 今、私はアプリケーションの規模を変えようとしています。同じモデルに複数のテーブルを使用する必要があります(例えば、idに基づいてsession1sesson2などのテーブル)。Sails.js:モデルの動的テーブル名

「ページビュー」モデルでは、「ページビュー1」、「ページビュー2」などの異なる表を使用しています。

どのようにしてそのモデルのtableNameを動的に定義することができるのですか。そのため、すべてのリクエストでパラメータまたは属性に従って変更できます。

はこれまでのところ、私は、コードがアプリケーションを中断、またはエラーをスローしますが、レコードが代わりに私が望んでいた一つで、デフォルトのテーブルに保存されていないことをこのよう

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

を試してみました。

+0

PageView ["tableName"]とは何ですか?これでデフォルトのテーブル名が表示されたら、PageView ["tableName] =" pageview "+ tableIdを設定してみてください –

+0

' var tableId = "two"; 'のような文字列を試しましたか? – Scott

答えて

0

私はそうすることが可能であると思ういけないが、私はthis

を読んだとき、私はあなたが動的にテーブル名を定義するカスタムフォーマットを使用することができると思います。

あなたは自動インクリメントの主キーを持つテーブルに行を挿入している場合、あなたはこのような挿入IDを取得することができますが:

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

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

これは行に対して有効である場合、それが有効であるかもしれませんテーブル用。

関連する問題