2016-05-05 6 views

Antwort

1

Sie können nicht roh Abfragen in Bookshelf.js auszuführen. Wenn Sie so wollen, verwenden Knex.js (verwendet von Bücherregal) auf diese Weise:

const myId = 42; 
knex.raw('SELECT * FROM MyTable WHERE id = ?', [myId]) 
then(result => { 
    console.log(result); 
}, error => { 
    console.log(error); 
}); 

Bookshelf.js sollte ein ORM sein, wo Sie jede Tabelle in Ihrem Javascript-Projekt erklären und verwendet diese Modelle zum Abrufen von Daten aus Ihrer Datenbank.

Hier ist ein Beispiel.

const Company = db.bookshelf.Model.extend({ 
    tableName: 'companys', 
    hunters: function employees() { 
     return this.hasMany(Employee, 'company_id'); 
    } 
}); 

const Employee = db.bookshelf.Model.extend({ 
    tableName: 'employees', 
    company: function company() { 
     return this.belongsTo(Company); 
    } 
}); 

Company.where({ id: 42 }).fetch([ withRelated: 'employees' ]) 
.then(result => { 
    console.log(result); 
}, error => { 
    console.log(error); 
}) 
Verwandte Themen