具有匹配条件的猫鼬不起作用

时间:2019-09-06 07:20:35

标签: mongodb mongoose

我的架构如下:

order.js

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final ArrayList<Details> detail = new ArrayList<>();

    detail.add(new Details(R.string.list_1, price_1,getResources().getColor(R.color.color_category_1)));

    // More detail           
    DetailsAdapter adapter = new DetailsAdapter(this, detail);
    ListView listView = (ListView) findViewById(R.id.list);
    listView.setAdapter(adapter);

    // Click event
    listView.setOnItemClickListener(new setOnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
            // Do what you need...
        }
    });
}

uBills.js

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

const orders = new Schema({
    order_type: {type: Number, require: true},    
    utility_bills: {type: mongoose.Schema.ObjectId, ref: 'u_bills'}

}, {versionKey: false});

module.exports = mongoose.model('orders', orders);

现在我的查询如下所示:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;


const uBills = new Schema({
    txn_ref_id: {type: String, require: false}
}, {versionKey: false});


module.exports = mongoose.model('u_bills', uBills);

但是以某种方式给了我以下答复:

const Order = require('../model/order');
const Util = require('../model/uBills');


let orderInfo = await Order.findOne({
                order_type: 12
            }).populate({
                path: 'u_bills',
                model: Util,
                match: {
                    txn_ref_id: req.query.tx_id
                }
            }).exec();

它无法识别匹配条件。让我知道建议。

0 个答案:

没有答案