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));
}
}
マイコントローラ:
use App;
これに:これはあなたのコントローラーの変更で
<?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);
}
}
Damn、次のエラーhaha: 'Class 'App \ DB' not found'。あなたの答えをありがとう:) – divHelper11
'use DB;'を追加してください: –
それは助けません。私のプロジェクトなどでこのDBファイルを持っていない可能性はありますか?新しくインストールされたlaravel – divHelper11