私はLaravelを使用していますが、ローカルで機能しているコードをLiveに移動し、「ユーザー」コントローラー内で以下の例外が発生しています。
Unhandled Exception
Message:
Using $this when not in object context
奇妙なことに、これはクラスであり、ローカルで正常に機能するため、ソリューションが静的表記を使用することは期待できません。このエラーが発生するのは、これをLiveにプロモートしたときだけです。コントローラークラスを適切にロードしていない、Liveから欠落しているLaravelコアの何かである可能性がありますか?
コードをLiveにプロモートした後、誰かがこれを経験しましたか?何か案は?
更新:エラーが発生しているコードのスニペット。このコードはローカルで機能するため、この問題を修正するには、このコードを変更する必要があるのではなく、何かが不足していると思います。
class User_Controller extends Base_Controller {
...
public function action_register() {
...
if ($user) {
//Create the Contact
DB::transaction(function() use ($user_id) {
$org = $this->create_org($user_id); //failing on this line with exception. btw $user is created fine
$this->create_contact($org->id);
$this->create_address($org->id);
});
private function create_org($user_id) {
$result = Org_type::where('name','=',$_POST['org_type'])->first();
$org = Org::Create(
array(
'name' => $_POST['org_name'],
'user_id' => $user_id,
'org_type_id' => $result->id,
)
);
return $org;
}
..。