如何使用Artisan的CLI选项在不同的Laravel环境中执行

时间:2013-04-12 11:28:36

标签: laravel laravel-3

我是第一次在我的应用程序上安装迁移脚本。 我想要做的是使用/config/test/database.php下的配置来运行我的迁移安装脚本。

我在paths.php上的条目如下

 $environments = array(
     'test' => array('http://test.*'),
     'local' => array('http://localhost.*')
);

我在/application/config/test/database.php上的条目

return array(
     'connections' => array(
     'mysql' => array('driver' => 'mysql',
     'host' => 'localhost',
     'database' => 'new_db',
     'username' => 'root',
     'password' => 'root',
     'charset' => 'utf8',
     'prefix' => '')
     ),
);

和/application/config/database.php

return array(
    'connections' => array(
    'mysql' => array('driver' => 'mysql',
    'host' => 'localhost',
    'database' => 'default_db',
    'username' => 'root',
    'password' => 'root',
    'charset' => 'utf8',
    'prefix' => '')
    ),
);

每次运行php artisan migrate:install --env=test时,它总是安装在/application/config/database.php上定义的数据库上,而不是使用/application/config/test/database.php中的配置。

感谢有人可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

我自己想通了。我不确定这是否是Laravel针对多种环境记录的内容。 paths.php

上的环境定义需要一个附加参数
$environments = array(
     'test' => array('http://test.*','MY_COMPUTER_NAME'),
     'local' => array('http://localhost.*')
);

现在,正在运行php artisan migrate:install --env=test正确执行/application/config/test/database.php上定义的数据库配置上的迁移脚本。

希望这有助于其他人