我目前正在使用laravel 4.1将旧网站移植到laravel 5.4。已经实现了很多小的更改(错误日志有帮助),但我坚持使用以下模型:
namespace App;
class navire extends Eloquent
{
protected $table = 'navire';
public function user()
{
return $this->belongsTo('user');
}
public function getId()
{
return $this->id;
}
}
我试图从控制器调用它:
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Input;
use App\navire;
class UserController extends Controller
{
public function somefunc()
{
// ....
$navire = \navire::where('user_id',$user->id)->get()->take(1);
}
}
尝试使用“使用...”或者在开头调用它时做了很多事情,到目前为止没有任何工作
错误的例子:
local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 'App\Http\Controllers\navire' not found' in /home/user/www/app/Http/Controllers/UserController.php:30
local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 'App\Http\Controllers\navire' not found' in /home/user/www/app/Http/Controllers/UserController.php:30
local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 'App\navire' not found' in /home/user/www/app/Http/Controllers/UserController.php:32
local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 'navire' not found' in /home/user/www/app/Http/Controllers/UserController.php:32
我已经调用了dumpautoload。
答案 0 :(得分:1)
使用$navire = \App\navire::where('user_id',$user->id)->get()->take(1);
或者您已经导入模型使用$navire = navire::where('user_id',$user->id)->get()->take(1);
,即没有前面的斜线。
另一方面,您可以使用first()
代替->get()->take(1)
。像这样$navire = \App\navire::where('user_id',$user->id)->first();