gpt4 book ai didi

orm - kohana ORM 问题

转载 作者:行者123 更新时间:2023-12-04 19:19:59 26 4
gpt4 key购买 nike

我正在使用 kohana ORM 以便从数据库中获取一些结果。我的问题是:即使我查阅了文档,我也找不到只选择我感兴趣的列的方法。更明确地说,我有:

$sale_stock = Model::factory('product_type')
->where('product_type_id','=', $id )
-> find_all();

var 倾倒它,它选择我所有的“SELECT product_type.* from product_type where etc”。
但我只想从销售库存表中选择“库存”字段。做 find('stock') 而 find_all() 返回一个 weired 对象......我错在哪里,我如何才能使用 kohana orm 实际上只选择“stock”列?

谢谢你!

最佳答案

ORM 方法 find()find_all()始终选择所有表列,因此有两种方法可以获取指定字段:

  • 加载完整的表格行并获取列
    来自:

  • $sale_stock = Model::factory('product_type')
    ->where('product_type_id','=', $id )
    -> find_all();
    // get array of id=>stock values
    $columns = $sale_stock->as_array('id', 'stock');

  • 使用在模型中创建特殊方法
    查询生成器:

  • // model Model_Product_Type 
    public function get_stocks($product_type_id)
    {
    return DB::select(array('stock'))
    ->from($this->_table_name)
    ->where('product_type_id', '=', $product_type_id)
    ->execute($this->_db);
    }

    关于orm - kohana ORM 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5056211/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com