2016-07-10 7 views
0

私はBookshelf JSを初めて使用しており、データベースで同様のクエリを実行したかったのです。私は彼らの公式ウェブサイト上のドキュメントを読んだが、私はこれを理解することができない。どのように「好き」のクエリを作成しますか?

次は私のコードです:

1. var DB = Bookshelf.initialize({ 
     client: 'mysql', 
     connection: config 

    }); 

    2. var User1=DB.Model.extend({ 

     tableName: 'applicationPrimary', 

     }); 

3.今、私のようなクエリにしたい:

select * from applicationPrimary where id like '%2%' ; 

4.Iは、次のことを試してみました:

Model.User1.query(function(qb) { 
    qb.where('id', 'LIKE', '%2%') 

    }).fetch() 
    .then(function(model) { 
    console.log(model) 

    });  

以下は初期設定とセットアップの方法です:

1. var Bookshelf = require('bookshelf'); 

    var config = { 

    host: 'localhost', 
    user: 'root', 
    password: 'root', 
    database: 'mydb', 
    charset: 'UTF8_GENERAL_CI' 

    }; 

    var DB = Bookshelf.initialize({ 

    client: 'mysql', 

    connection: config 

    }); 

    module.exports.DB = DB; 


2. var DB = require('./db').DB; 

    var User1 = DB.Model.extend({ 
    tableName: 'applicationPrimary', 

    }); 


    module.exports = { 
    User1: User1, 

    }; 

そして私はとしてそれを使用しています:

VaRモデルは=( './モデル')が必要です。

私はUser1を使用しています。

上記は動作せず、クエリと呼ばれる機能がないというエラーが発生します。

ご協力いただきまして誠にありがとうございます。

答えて

0

LIKEのためのあなたの構文が正しい、問題はあなたが、User1オブジェクト上にない.query

Model.User1
User1.where('id', 'LIKE', '%2%').fetch().then(...) 
+0

.whereを使用すべきである私は、次のことを試してみました: Model.User1.where( 'ID'、 'LIKE'、query1).fetch()。then(function(model){ \t}); エラーを投げる: TypeError:Model.User1.whereは関数ではありません –

+0

はい、Model.User1ではなく、 'User1'を使用します。 – Iso

+0

User1はModelと呼ばれる別のファイルにあります。それは私がそれを参照している方法です。 –

関連する問題