0
我正在使用控制器来调用在我的某个视图中定义的窗体。在控制器中,我有一个简单的'create()'方法,我只是想在使用我定义的'Video'模型时调用表单。问题是当我尝试调用这个函数时,我不断收到'从空值创建默认对象'错误。Laravel PHP:从空值错误中创建默认对象
控制器(应用\ VideosController.php):
<?php
use Acme\repositories\VideoRepository;
use Models\Video;
use Models\Validators as Validators;
class VideosController extends BaseController {
/**
* The video model
*
* @var \Models\Video
**/
protected $video;
/* The value defined from my repository
*/
protected $videoRepo;
/**
* Instantiate the controller
*
* @param Models\Video $video
* @return void
**/
public function __construct(VideoRepository $videoRepo)
{
$this->videoRepo = $videoRepo;
/* Old code below
$this->video = \App::make('Repositories\VideoRepository');
*/
}
/* Create a new video by passing in a sub view
Of the form for creating a new video */
public function create()
{
$data = array('type' => 'video');
$this->layout->content = \View::make('forms.new-video', $data);
}
}
模型(APP /模型/ video.php):
<?php
class Video extends Eloquent {
/**
* The table used by this model
*
* @var string
**/
protected $table = 'videos';
/**
* The primary key
*
* @var string
**/
protected $primaryKey = 'video_id';
/**
* The fields that are guarded cannot be mass assigned
*
* @var array
**/
protected $guarded = array();
/**
* Enabling soft deleting
*
* @var boolean
**/
protected $softDelete = true;
}
用于我的形式的视图位于'app \ views \ forms \ new-video.blade.php'。
难道我没有正确定义我的'create()'方法,或者是不把文件放在正确的位置吗?
这样做的窍门!谢谢! – 2014-11-05 21:51:12