Ben Kohana 2.3 kullanan ve belirli bir ORM sorgu ile sorun yaşıyorum bir site geliştiriyorum. Esasen ne yapıyorum aşağıdaki sorgu
SELECT *
FROM 'records'
WHERE ('ServRepSupervisor' = name AND 'Followup_read' = 0) OR ('ServRepSupervisor' = name AND `read` = 0)
Bu gibi ORM sorgu çalıştığınızda ...
$unread = ORM::factory('record')
->where(array('ServRepSupervisor' => Auth::instance()->get_user()->name, 'Followup_read' => 0))
->orwhere(array('ServRepSupervisor' => Auth::instance()->get_user()->name, 'read' => 0))
->find_all();
i ile sona sorgu
SELECT `records`.*
FROM (`records`)
WHERE `ServRepSupervisor` = 'name' AND `Followup_read` = 0
OR `ServRepSupervisor` = 'name'
OR `read` = 0
Nasıl amaçlanan sonuç üretmek için ORM sorgu rework olabilir?
EDIT: Ben çalışmak için başardı ama çok şık bir çözüm gibi görünmüyor.
$unread = ORM::factory('record')
->where('(\'ServRepSupervisor\' = \'' . Auth::instance()->get_user()->name . '\' AND \'Followup_read\' = 0) OR (\'ServRepSupervisor\' = \'' . Auth::instance()->get_user()->name . '\' AND \'read\' = 0)')
->find_all();
Bu benim istediğim dataset döndüren ama sadece çirkin bir kod. Bunu yapmanın daha iyi bir yolu olmalı.