- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我目前正在处理“多数据库动态交换连接”之类的项目。
所以我最终要做的是:
$connectionName = uniqid();
\Config::set('database.connections.' . $connectionName, [/** db options **/]);
\Artisan::call('migrate', ['--database' => $connectionName]);
或
$connectionName = uniqid();
\Config::set('database.connections.' . $connectionName,[/** db options **/]);
$user = new User();
$user->setConnection($connectionName);
$user->first_name = 'Daisy';
$user->last_name = 'Demo';
$user->is_not_being_ignored_by_santa_this_year = 0;
$user->email = //and so so on
$user->save();
对于 Artisan 调用,我有点理解为什么 Laravel 需要引用字符串中的连接,保存在配置数组中。
然而,在 Eloquent 模型本身,我发现将我的数据库连接写入配置数组有点麻烦。所以它可以通过模型中的“单例方法”\Config::get().. 来获取。
有没有更优雅的东西,我可以直接注入(inject)配置,而不必将其写入一些 super 全局?
还是我遗漏了什么?
最佳答案
你可能会过得更好creating a configuration array for each connection然后您可以通过指定要使用的连接轻松地在连接之间切换。
如果您需要在同一个模型上使用多个连接,您可以使用 on
method :
所以它会像 User::on('dbconnection2')->find(1)
如果你只是想为不同的模型使用不同的连接,你可以在模型上设置 protected $connection
属性:
class User extends Model
{
protected $connection = 'dbconnection2';
}
希望对您有所帮助。
关于php - 在 Eloquent 模型上还有另一种方法 "setConnection"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41272826/
在从辅助数据库获取模型实例之前,我试图在 Laravel 4 中设置模型正在使用的连接。我已经在 Config/database.php 中正确填写了辅助连接的信息,但是由于某些原因,当我调用 $us
我目前正在处理“多数据库动态交换连接”之类的项目。 所以我最终要做的是: $connectionName = uniqid(); \Config::set('database.connections.
本文整理了Java中org.apache.drill.yarn.zk.ZKClusterCoordinatorDriver.setConnect()方法的一些代码示例,展示了ZKClusterCoor
我是一名优秀的程序员,十分优秀!