[英]Eloquent without laravel selectRow is not wotking
我在外面用雄辯的laravel。 我已經在compposer.json中安裝了illuminate / database。 現在,我創建了一個擴展Illuminate \\ Database \\ Eloquent \\ Model類的類。 現在我想使用DB :: row(),但出現錯誤
這是我的代碼:
模型.php
namespace Framework;
use Helpers\Helper;
use Illuminate\Database\Capsule\Manager as Capsule;
use Illuminate\Database\Eloquent\Model as BaseModel;
class Model extends BaseModel {
public $Error = null;
public $Connection = null;
public $qry_builder = null;
public $version;
public $table_name;
function __construct() {
try{
parent::__construct();
$capsule = new Capsule;
$capsule->addConnection([
'driver' => DB_DRIVER,
'host' => DB_HOST,
'database' => DB_NAME,
'username' => DB_USER,
'password' => DB_PSSWD,
'charset' => 'utf8'
]);
$capsule->setAsGlobal();
$capsule->bootEloquent();
} catch (\Exception $ex){
Helper::log()->log(LogLevel::ERROR, "Unable to connect DB", ["DB_NAME"=> DB_NAME,"HOST"=>DB_HOST,"DB_USER"=>DB_USER,"DB_PASSWORD"=>DB_PSSWD]);
}
}
}
namespace Models;
use \Framework\Model;
use Helpers\Helper;
class BankMinMaxModel extends Model {
protected $table = "tbl_pl_bank_min_max_new";
protected $primaryKey = 'id';
// protected $fillable = [];
public $timestamps = false;
protected $guarded = [];
public function get($where){
$data = null;
echo $data = self::orderBy("id", "DESC")->where($where)->selectRow("MIN(NULLIF(min_turnover,0)) as min_turnover")->toSql();
exit;
if($data){
$data = $data->toArray();
}
return $data;
}
}
控制器:
$loanMinMaxValues = (new BankMinMaxModel)->get([["occup_id", "=", 3]]);
錯誤
“調用未定義的方法Illuminate \\ Database \\ Eloquent \\ Builder :: selectRow()”
selectRow()
中沒有selectRow()
。 應該是selectRaw()
。
看一下Laravel文檔中的Raw Expressions。
https://laravel.com/docs/5.8/queries#raw-expressions
DB :: raw()
您可以使用它->select(\\DB::raw('column_one, column_tow'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.