【发布时间】:2015-03-14 13:19:28
【问题描述】:
你能帮帮我吗?
我刚开始使用 laravel 5,无法让这个简单的 Model:all() 工作。我确定我做错了什么,但我不知道是什么。
这是我所拥有的:
routes.php
Route::get('/', 'PageController@index');
合作伙伴.php
<?php namespace App;
use Illuminate\Database\Eloquent\Model;
class Partner extends Model {
protected $table = 'tab_parceiro';
protected $fillable = '';
public $timestamps = false;
protected $primaryKey = 'codigo';
}
PageController.php
<?php namespace App\Http\Controllers;
class PageController extends Controller {
public function __construct()
{
}
public function index()
{
$partners = \App\Partner::all();
//return view('index', compact('partners'));
}
}
错误:
[2015-03-14 12:50:22] production.ERROR: exception 'ErrorException' with message 'array_flip() expects parameter 1 to be array, string given' in /home/ubuntu/workspace/storage/framework/compiled.php:9360
表格
| tab_parceiro | CREATE TABLE `tab_parceiro` (
`CODIGO` int(11) NOT NULL AUTO_INCREMENT,
`NOME` varchar(200) DEFAULT NULL,
`ENDERECO` varchar(100) DEFAULT NULL,
`TELEFONE` varchar(20) DEFAULT NULL,
`EMAIL` varchar(50) DEFAULT NULL,
`SITE` varchar(100) DEFAULT NULL,
`CONTATO` varchar(50) DEFAULT NULL,
`OBS` text,
PRIMARY KEY (`CODIGO`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 |
视图其实无所谓,因为在调用视图之前就发生了错误。
【问题讨论】:
-
您传递的是字符串
'partners'而不是$partners变量。 -
正如我最后所说,对视图的调用并不重要,因为错误发生在此之前,在 Partner::all() 行中(这就是它被评论的原因)。另外,我没有将字符串作为变量传递,我正在压缩它,这很有效。
-
@limonte 该行已被注释掉。它不会对流程产生任何影响。
标签: php laravel model eloquent laravel-5