2013-10-16 15 views
6

Tôi đã tạo một ứng dụng nhật ký JS trong Sails.js và mọi thứ đều tuyệt vời. Bây giờ, tôi đang trên con đường của tôi mở rộng ứng dụng: Tôi cần sử dụng một vài bảng cho cùng một mô hình (ví dụ: bảng cho session1sesson2 v.v ... dựa trên id).Sails.js: Tên bảng động trên các mô hình

Giả sử đối với mô hình "Lần xem trang", tôi sẽ sử dụng các bảng khác nhau, như "Lần xem trang1", "Lần xem trang2", v.v.

Làm cách nào tôi có thể xác định động tableName của mô hình đó, vì vậy tôi có thể thay đổi nó trên mọi yêu cầu theo thông số hoặc thuộc tính.

Cho đến nay, tôi đã cố gắng theo cách này

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

Đó là mã không phá vỡ các ứng dụng, hoặc ném bất kỳ lỗi nào, nhưng kỷ lục đã được lưu trên bảng mặc định, thay vì người tôi muốn.

+0

PageView ["tableName"] in là gì? Nếu điều này in tên bảng mặc định sau đó thử thiết lập PageView ["tableName] =" pageview "+ tableId –

+0

Bạn đã thử một chuỗi như' var tableId = "two"; '? – Scott

Trả lời

0

Tôi không nghĩ rằng nó có thể làm như vậy, nhưng khi tôi đọc this

Tôi nghĩ bạn có thể sử dụng định dạng tùy chỉnh để tự động xác định tên bảng.

Nếu bạn đang chèn một hàng vào một bảng với một khóa chính increment tự động, bạn có thể lấy id chèn như thế này:

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

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

nếu điều này là hợp lệ cho các hàng, sau đó nó có thể có giá trị cho các bảng.

Các vấn đề liên quan