我試圖更新this excellent solution of Collin James以在Laravel 4中工作。在Laravel 4中創建可鏈式方法
直到知道沒有運氣。這是我想出了:
/app/libraries/Model.php(我已經註冊了圖書館目錄使用作曲家)
namespace Elegant;
class Model extends \Illuminate\Database\Eloquent\Model {
function __construct()
{
echo 'Show me if the Model exension works<br />';
}
protected function query()
{
echo 'Show me if the query function gets called<br />';
return new \Elegant\Query($this);
}
}
/app/libraries/Query.php(我已經註冊使用的作曲家庫目錄)
namespace Elegant;
class Query extends \Illuminate\Database\Query {
public function __construct()
{
echo 'Show me if the Query exension works<br />';
}
public function byArray($column, $value)
{
if (is_array($value))
return $this->whereIn($column, $value);
else
return $this->where($column, '=', $value);
}
public function __call()
{
}
}
/app/config/app.php
'aliases' => array(
...
'Eloquent' => 'Elegant\Model',
...
)
的作品的唯一事情是:
- 「告訴我,如果exension的運作模式」。
其他的「標記」不工作:
- 查詢()不會被調用所有
- 雄辯/查詢使用而不是看着優雅,/查詢第一
這些都不是必要的,你能告訴我們你想做什麼(因爲它可能不會覆蓋方法)。 – clone1018