私はlaravel 5を使用しています。モデルでは、私はコントローラで呼び出す静的関数を持っています。それは正常に動作しているが、私は別の非静的関数でこの関数で同じ変更をしたいと私はそれがエラーを生成する静的関数内でそれを呼び出すとき。私はlaravel 5の静的関数で非静的関数を呼び出します。
Non-static method App\Models\Course::_check_existing_course() should not be called statically
は、ここに私のモデル
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Course extends Model {
public $course_list;
protected $primaryKey = "id";
public function questions(){
return $this->belongsToMany('App\Models\Question','course_questions')->where("status",1)->orderBy("id","DESC");
}
public static function courses_list(){
self::_check_existing_course();
}
private function _check_existing_course(){
if(empty($this->course_list)){
$this->course_list = self::where("status",1)->orderBy("course")->get();
}
return $this->course_list;
}
}
私はそれを試みましたが、静的関数$ this->は動作しませんでした。 – Jitendra
私は自分の答えを編集しました。今すぐやってみて下さい。それは動作するはずです。 –