создать модель на laravel 5.2

Я использую lumen из laravel 5.2 и редактирую app_key и информацию о базе данных в файле .env, а также раскомментирую $ app-> withFacades (); в bootstrap / app.php, так что теперь я могу подключиться к своей базе данных. Проблема в том, что я хочу использовать модель в своем проекте, но всегда терпел неудачу. мой модельный магазин в app / Models / User.php

namespace App\Models;
use Illuminate\Database\Eloquent\Model;

class User extends Model {
  protected $table = 'user';
  protected $fillable = ['userid','name','timestamp'];
}

мой контроллер

namespace App\Http\Controllers;
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, OPTIONS');
header('Access-Control-Allow-Headers: Origin, Content-Type, Accept, Authorization, X-Request-With');
header('Access-Control-Allow-Credentials: true');

use Illuminate\Http\Request;
use Laravel\Lumen\Routing\Controller as BaseController;
use DB;

use App\Models\User;

class Controller extends BaseController
{
    public function tes(Request $request){
        $user = User::where('id','=',1)->first();

        return 'name: '.$user->name;
    }
}

я также пробовал изменить

use App\Models\User;

с участием

use App\User;  

но все еще не работает.

вот мое сообщение об ошибке

FatalErrorException in Model.php line 3280:
Call to a member function connection() on null  

на моем сервере xampp также есть это сообщение

Fatal error: Call to a member function connection() on null in D:\Workspace\website\api\vendor\illuminate\database\Eloquent\Model.php on line 3280  

что я пробовал

  • отредактируйте database.php в lumen-framework / config /
  • скопируйте и поместите database.php в app / Config /

и все еще не работает. я что-то скучаю?


person gondai yosuke    schedule 12.05.2016    source источник
comment
Вы также раскомментировали $app->withEloquent(); в своем bootstrap/app.php файле?   -  person camelCase    schedule 12.05.2016
comment
я не заметил этого .. теперь он работает ..   -  person gondai yosuke    schedule 12.05.2016
comment
Легко пропустить, уже делал это раньше. Я добавил в качестве ответа для будущих читателей.   -  person camelCase    schedule 12.05.2016
comment
да, это мой первый раз, когда я использую laravel, я не заметил, что эта функция предназначена для этого. ваш ответ принят. Спасибо.   -  person gondai yosuke    schedule 13.05.2016


Ответы (1)


Вы близки, просто нужно раскомментировать $app->withEloquent(); в вашем bootstrap/app.php файле! Это позволит вам использовать Eloquent в Lumen. Из документов:

Если вы хотите использовать Eloquent ORM, раскомментируйте вызов $app->withEloquent() в своем bootstrap/app.php файле.

person camelCase    schedule 12.05.2016