Laravel supporta più connessioni Database. In primo luogo, definire i collegamenti in config/database.php
:
<?php
return array(
'default' => 'default_connection',
'connections' => array(
// domain.com
'default_connection' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'primary_database',
'username' => 'username',
'password' => 'password'
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
// sub.domain.com
'subdomain_connection' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'secondary_database',
'username' => 'username',
'password' => 'password'
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
),
);
Ora per specificare quale connessione tuoi modelli dovrebbero usare è possibile impostare la proprietà $connection
nei tuoi modelli:
<?php
class YourModel extends Eloquent {
protected $connection = 'subdomain_connection';
}
È possibile impostare il valore della $connection
programatically.
fonte
2015-12-16 10:44:37
Stai chiedendo come configurare i sottodomini? Come, per due applicazioni Laravel separate? –
@CaptainHypertext Penso che la parte del sottodominio sarà eseguita tramite l'host virtuale, sto cercando suggerimenti per la gestione del database. – C2486
Il database separato è sullo stesso server? –