2014-10-17 75 views
1

我想弄清楚如何让我的环境在我的Laravel应用程序中设置为开发模式。试图在开发模式下迁移

引导/ start.php

$env = $app->detectEnvironment(array(

    'development' => array('blog.app'), 
    'production' => array('') 

)); 

我的路线之内的文件我有以下几点:

Route::get('/', function() 
{ 
    dd(App::environment()); 
}); 

当我去blog.app它说,它集生产,我不确定为什么。弄清楚为什么给我生产而不是开发的目的是因为我试图运行命令“php artisan migrate”,它给了我以下内容。

My-iMac:blog my$ php artisan migrate 
************************************** 
*  Application In Production!  * 
************************************** 

Do you really wish to run this command? 

所以我需要帮助理解为什么它仍然说是应用在生产模式下,当我试图在发展模式。

回答

1

进入您的项目目录。然后导航到bootstrap/start.php。

用您的机器名称编辑$app->detectEnvironment中指定的本地数组。

Laravel每次都会自动检查您的计算机名称,并知道它是本地环境并使用本地配置文件。要使用本地配置文件,您可以导航到app/config/local并在其中编辑文件。 app/config中的文件属于生产环境。您可以将这些文件复制到本地文件夹中,然后对其进行相应编辑,例如,您的数据库配置可能在本地计算机和服务器上有所不同。

您可以简单地编辑配置文件夹中的文件,Laravel将根据start.php中的数组自动检测环境,并使用与您工作的机器相关的配置文件。您还可以指定更多的环境并在start.php文件中创建它们的条目,然后在app/config文件夹中创建一个具有相同名称的文件夹,并为该文件夹中的该环境创建配置文件。

例子:如果你想有两个本地环境中,您可以编辑您start.php文件中像这样

$env = $app->detectEnvironment(array(

    'local' => array('Machine1', 'Machine2'),. 
    'local2' => array('Machine3', 'Machine4'), 

)); 

,然后导航到应用程序/ config文件夹和创建像本地和local2并有两个文件夹为每个文件分开文件。现在名称为Machine1和Machine2的机器将自动使用本地文件夹中的配置文件,Machine3和Machine4将使用local2文件夹中的配置文件。这样Laravel在设置环境中提供了极大的灵活性。

欲了解更多信息,请查看Environments and Configuration Laracasts上的情节。

1

你需要弄清楚你的机器名称。为了做到这一点,在任何地方运行此代码:关于函数

echo gethostname(); 
exit; 

更多信息:http://php.net/manual/en/function.gethostname.php

它将输出你的机器名,那么你需要将其粘贴在“发展”阵列英寸