我正在尝试创建一个Laravel应用程序,该应用程序在我的数据库中创建自定义表和列,以便存储用户生成的表单数据(自定义调查应用程序)。
我正在尝试使用Builder和Blueprint并在其上创建一个自定义类(就像我在FormBuilder中所做的那样)。
示例:
namespace Acme\Helpers;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Schema\Builder;
class AnswersTableBuilder {
private $builder;
private $blueprint;
public function __construct(Builder $builder, Blueprint $blueprint)
{
$this->builder = $builder;
$this->blueprint = $blueprint;
}
[...]
然而,当我尝试在我的控制器中使用它时,例如:
use Acme\Validators\SurveyValidator;
use Acme\Repos\Survey\SurveyRepository;
use Acme\Repos\Section\SectionRepository;
use Acme\Helpers\AnswersTableBuilder;
class SurveysController extends \BaseController {
private $surveyRepo;
private $sectionRepo;
private $tableBuilder;
public function __construct(SurveyRepository $survey, SectionRepository $section, AnswersTableBuilder $tableBuilder)
{
$this->beforeFilter('csrf', array('only' => array('store', 'destroy', 'update')));
$this->surveyRepo = $survey;
$this->sectionRepo = $section;
$this->tableBuilder = $tableBuilder;
}
[...]
我收到错误:
Unresolvable dependency resolving [Parameter #0 [ <required> $dsn ]].
我似乎能够在我的大多数课程中使用IoC容器,也许我在这里使用的依赖项有问题吗?尝试更改我的服务提供商中的条目,但它没有帮助。
非常感谢任何帮助!
感谢。
答案 0 :(得分:0)
Illuminate\Database\Schema\Blueprint
和Illuminate\Database\Schema\Builder
,这两个类也有依赖关系(第一个只需要表名,后者需要一个Illuminate \ Database \ Connection实例)。
也许你可以尝试注射它们?