Changement de nom de base de données dans Laravel/Homestead
J'ai commencé à apprendre Laravel, à peine une heure auparavant, et à la suite de tutoriels.
Mes paramètres pour la base de données sont comme suit (Fichier: app/config/database.php):
'default' => 'mysql',
'connections' => array(
'sqlite' => array(
'driver' => 'sqlite',
'database' => __DIR__.'/../database/production.sqlite',
'prefix' => '',
),
'mysql' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'laraveltest',
'username' => 'root',
'password' => 'secret',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
Dans mySQL sur homestead, j'ai déjà créé laraveltest
base de données. J'ai également créé de fichier de migration dans database/migration
répertoire avec le code suivant:
public function up()
{
Schema::create('users', function($table)
{
$table->increments('id');
$table->string('email')->unique();
$table->string('name');
$table->timestamps();
});
}
et la migration des commandes ont été:
vagrant@homestead:~/Code/Laravel$ php artisan migrate
Migration table created successfully.
Migrated: 2014_08_14_195103_create_users_table
Affiché, l'utilisateur créé, mais dans homestead
base de données, pas dans laraveltest
base de données. Quelqu'un peut s'il vous plaît dites où je suis allé mal et comment la force de laravel à utiliser laraveltest
base de données?
Modifier après la première observation
Fichier: bootstrap/start.php
$env = $app->detectEnvironment(array(
'local' => array('homestead'),
));
bootstrap/start.php
fichier?édité en question.
OriginalL'auteur Kapil Sharma | 2014-08-14
Vous devez vous connecter pour publier un commentaire.
Il s'agit probablement d'un problème avec les environnements. Vérifiez que vous avez une base de données de fichier de configuration dans/app /config/local/, et vérifier qu'il y a les bons réglages.
OriginalL'auteur camroncade
Si quelqu'un trouve cette quête de la réponse pour Laravel 5 ou plus tard: C'est la même chose que @camroncade dit, mais dans ce cas c'est votre
.env
fichier dans la racine du projet que vous voulez regarder.OriginalL'auteur Karin van den Berg
Je suis actuellement aux prises avec ce problème. Changé la .env fichier à de nombreuses reprises ainsi que le config.php fichier. Rien ne semblait fonctionner.
Après avoir fait un peu de profondeur à creuser dans le cadre que j'ai trouvé acceptable pour une solution temporaire à ce problème qui n'entrent pas en conflit avec Laravel 5.0.2 des Exceptions.
REMARQUE: je suis actuellement à l'aide Ampps 3.4 avec php 7.0.2 phpmyadmin 4.4.15.1 sur un Windows 8.1 OS
À l'intérieur du fichier "ConnectionFactory.php"
Ce fichier est situé à la "laravel\vendor\laravel\framework\src\Éclairer\Database\Connecteurs"
Faites défiler jusqu'à la "à la fonction publique, faire" situé à ligne 41
Dans cette fonction, vous pouvez effectuer les opérations suivantes après cette déclaration
$config = $this->parseConfig($config, $nom);
qui devrait être sur ligne 43:
$config['database'] = 'Insérer le nom de votre base de données';
Ce changement permettra de Laravel pour continuer avec le processus normal d'avoir aucun effet négatif n'importe où avec le cadre ou de votre projet. Jusqu'à ce que ce bug est corrigé par les responsables de Laravel ou de la communauté.
Jusqu'alors amusez-vous bien! =)
OriginalL'auteur Andre F.