【发布时间】:2014-04-03 14:52:00
【问题描述】:
我正在开发一个使用 Sentry 2 的 Laravel 4 包。 为了安装Sentry 2,我必须运行迁移并发布它们的配置:
php artisan migrate --package=cartalyst/sentry
php artisan config:publish cartalyst/sentry
我希望我的包的用户可以简单地为我自己的包运行迁移和发布配置,而不必为 Sentry 2 或我可能需要的任何其他包运行它。
有没有办法做到这一点?应该这样做,还是应该继续要求我的用户为每个包运行迁移/发布配置?
谢谢
编辑:
正如所承诺的,我遵循了@AntonioCarlosRibeiro 的提议并创建了一个新的 Artisan 命令:
class SybilInstall extends Command
{
protected $name = 'sybil:install';
protected $description = 'Install the sybil package';
public function fire()
{
$this->call(
'migrate',
array('--package' => 'cartalyst/sentry')
);
$this->call(
'migrate',
array('--package' => 'ghunti/sybil')
);
$this->call(
'asset:publish',
array('ghunti/sybil')
);
}
}
现在人们只需要运行php artisan sybil:install,它会处理一切
【问题讨论】:
标签: php laravel migration package config