我需要在2个地方保存数据库连接信息吗?如果执行以下操作,则连接正常。如果删除任何一个文件的数据,将无法连接。
config / databases.php文件
'blah_1' => [
'driver' => 'mysql',
'host' => env('DB_HOST’,’1.1.1.1’),
'port' => env('DB_PORT','3306'),
'database' => env('DB_DATABASE’,’someDB_1’),
'username' => env('DB_USERNAME’,’someUser_1’),
'password' => env('DB_PASSWORD’,’somePass_1’),
],
'blah_2' => [
'driver' => 'mysql',
'host' => env('DB_HOST_SECOND’,’2.2.2.2’),
'port' => env('DB_PORT_SECOND','3306'),
'database' => env('DB_DATABASE_SECOND’,’someDB_2’),
'username' => env('DB_USERNAME_SECOND’,’someUser_2’),
'password' => env('DB_PASSWORD_SECOND’,’somePass_2’),
],
.env文件:
DB_CONNECTION=blah_1
DB_HOST=1.1.1.1
DB_PORT=3306
DB_DATABASE=someDB_1
DB_USERNAME=someUser_1
DB_PASSWORD=somePass_1
DB_CONNECTION_SECOND=blah_2
DB_HOST_SECOND=2.2.2.2
DB_PORT_SECOND=3306
DB_DATABASE_SECOND=someDB_2
DB_USERNAME_SECOND=someUser_2
DB_PASSWORD_SECOND=somePass_2
答案 0 :(得分:3)
简短的回答是“否”。您只需要在config/databases.php
中使用它。 .env
文件将覆盖其他环境中的设置,而无需更新配置文件。
例如,在您的本地环境中,您的凭据很可能与生产环境不同。您不想在本地更新config/databases.php
,并提醒自己不要推送文件。
但是,即使将连接从.env
文件中删除,连接仍然可以使用。它将默认使用env()
中第二个参数的值。
答案 1 :(得分:0)
类似于const getReactResults = () =>
axios.get(API_URL).then(res =>
res.data.items.map(({ name, url }) => ({
name,
url
}))
);
class Rel extends React.Component {
state = { results: [] };
componentDidMount() {
getReactResults().then(results => {
this.setState({ results });
});
}
render() {
return (
<div>
<ul>
{this.state.results.map((item, i) => (
<li key={i}>{item.name}</li>
))}
</ul>
</div>
);
}
}
以及以下方面的良好解释:
https://stackoverflow.com/questions/31847054/how-to-use-multiple-database-in-laravel