1
我可能不明白這些靜態函數是如何工作的。Laravel 5.2模型靜態函數使用
在我公司的項目中,他們只是在任何模型中創建一個公共靜態函數,然後他們以這種方式使用它modelname::functionName()
。我認爲他們的模型和控制器看起來與我的相似。
現在,我在家裏培訓編程,我在App目錄中創建了一個Character模型。然後我試圖在CharacterController中使用它,但它說:
FatalErrorException in CharacterController.php line 18: Class 'App\Http\Controllers\Character' not found
。
對我來說,看起來Laravel正在尋找控制器中的靜態函數而不是我的模型。
我的模型:
<?php
namespace App;
use app;
use Illuminate\Database\Eloquent\Model;
class Character extends Model
{
protected $table = 'character';
public static function insertCharacterRace($race){
DB::insert('INSERT INTO `character` VALUES `race` = ?', array($race));
}
}
我的控制器:
<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use Illuminate\Http\Request;
use App;
class CharacterController extends Controller
{
public function raceSelected($race){
Character::insertCharacterRace($race);
}
}
該死的,下一個錯誤哈哈:'''App'DB'找不到'。謝謝你的回答:) – divHelper11
加'use DB;':) –
它沒有幫助。有沒有可能我沒有這個數據庫文件在我的項目或什麼?這是新安裝的laravel – divHelper11