我在Laravel中有一个非常简单的设置,而我正在学习它,但我无法理解为什么我会收到错误。这可能是我忽略的一些简单。
我可以得到这个:
Route::get('users', function() {
$users = User::all();
return View::make('users')->with('users', $users);
});
示例在Laravel上完美运行,在users.blade.php视图中显示此信息。
在我的数据库中,我还有一个'列表'表但是当我复制上面代码的结构以尝试显示我的列表时,我收到以下错误。
syntax error, unexpected '::' (T_PAAMAYIM_NEKUDOTAYIM), expecting '('
在线
$lists = list::all();
我的代码如下 的 routes.php文件
Route::get('lists', function() {
$lists = list::all();
return View::make('lists')->with('lists', $lists);
});
list.php / models
<?php
class List extends Eloquent {}
lists.blade.php / views
@extends('layouts.main')
@section('content')
@foreach($lists as $list)
<p>{{ $list->name }}</p>
@endforeach
@stop
非常感谢任何帮助。感谢。
答案 0 :(得分:2)
列表是PHP中的reserved keyword,因此您不能将其用作类名。来自文档:
这些词在PHP中具有特殊含义。其中一些代表看起来像函数的东西,一些看起来像常量,等等 - 但它们并非真的:它们是语言结构。您不能将以下任何单词用作常量,类名,函数或方法名称。
不幸的是,您需要拥有不同的类名,然后将对象的表名设置为“#list”列表&#39;像这样:
class AppList extends Eloquent { protected $table = 'lists'; }