ठीक है तो मैं निम्नलिखित तीन models
Sequelize hasMany
मॉड्यूल है:
var Module = sequelize.define('module', {
id: DataTypes.INTEGER,
name: DataTypes.STRING,
description: DataTypes.STRING,
category_id: DataTypes.STRING,
module_type_id: DataTypes.STRING,
gives_score: DataTypes.INTEGER,
duration: DataTypes.STRING,
price: DataTypes.STRING
}, {
freezeTableName: true}
)
सक्षमता:
Competence = sequelize.define('competence', {
id: DataTypes.INTEGER,
name: DataTypes.STRING,
organization_id: DataTypes.INTEGER,
competence_type_id: DataTypes.INTEGER
},{freezeTableName:true})
Module_has_competence:
+०१२३५१६४१० Module_has_competence = sequelize.define('module_has_competence', {
id: DataTypes.INTEGER,
module_id: DataTypes.INTEGER,
competence_id: DataTypes.INTEGER,
score: DataTypes.STRING
},{
freezeTableName: true}
})
आप तालिकाओं के बीच संबंध देख सकते हैं एक n:m
हैं तो अब मैं पता लगाना चाहते हैं सभी Competence
कि एक Module
है:
तो मैं निम्नलिखित संबंध बनाया
Module.hasMany(Competence, {through: Module_has_competence, foreignKey: 'module_id'});
हालांकि जब मैं दौड़ने की कोशिश करता हूं:
retrieveById: function (quote_id, onSuccess, onError) {
Module.find({include: [{ all: true }],where: {id: quote_id}})
.success(onSuccess).error(onError);
}
यह कुछ भी नहीं देता है। लेकिन अगर मैं रिश्ते को हटा देता हूं तो यह केवल Module
क्या कोई मुझे बता सकता है कि मैं क्या गलत कर रहा हूं?
जब मैं डिबग
जब मैं डिबग यह दुर्भाग्य यह यह सिर्फ एसक्यूएल कॉल की अनदेखी कर रहा है लगता है किसी भी एसक्यूएल प्रवेश नहीं करता है?
आप उन बयानों द्वारा उत्पादित एसक्यूएल प्रश्नों पोस्ट कर सकते हैं:
http://docs.sequelizejs.com/en/latest/docs/associations/#one-to-many-associations
यहाँ कैसे मैं इस निष्कर्ष पर मिल गया का सार क्या है?इसके अलावा उस बिंदु पर डीबी आपकी स्थिति उपयोगी होगी –
@DanRocha निश्चित रूप से कृपया लटकाएं: डी –
@DanRocha दुख की बात यह है कि यह कोई भी एसक्यूएल पोस्ट नहीं करता है: मेरे सभी अन्य कार्य करता है लेकिन यह कोई नहीं है: s –