php - 在 laravel 模型中更改数据库连接

标签 php laravel laravel-4

所以我使用Laravel 4.2,我想要的是在我的一个模型中使用外部数据库,这是我的模型代码:

<?php
class McibModel extends Eloquent {
    /**
      * The database table used by the model.
      *
      * @var string
      */
    //here i should call the external database table
    protected $table = 'agencies';
}

因此,如果有人有任何想法,我将不胜感激。

最佳答案

不同的模型可以有不同的数据库连接。所以您的模型使用正常的默认连接 - 但您的“McibModel”模型可以使用另一个连接:

class McibModel extends Model {

    protected $connection= 'second_db_connection';

    protected $table = 'agencies';

}

然后在您的数据库连接文件中 - 您将拥有如下内容:

return array(
    'connections' => array(
        'mysql' => array(
            'driver'    => 'mysql',
            'host'      => 'localhost',
            'database'  => 'database1',
            'username'  => 'user1',
            'password'  => 'pass1'
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        ),

        'second_db_connection' => array(
            'driver'    => 'mysql',
            'host'      => 'localhost',
            'database'  => 'database2',
            'username'  => 'user2',
            'password'  => 'pass2'
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        ),
    ),

关于php - 在 laravel 模型中更改数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28985472/

相关文章:

php - Joomla 输出覆盖不起作用

php - 检查索引是否存在 Elasticsearch

php - 仅当项目属于特定类别时显示 WooCommerce 我的帐户订单

javascript - 在php中将html元素编码为JSON

php - 在不更改目录的情况下运行 PHP Artisan

php - Laravel Eloquent 模型——模型扩展模型

php - 使用 laravel 验证检查名称在未删除项目中是否唯一

mysql - 从 Laravel 中的三个表中选择而不指定 ON

php - 在 Laravel eloquent 数据库播种机/工厂中播种关系数据 - 类型错误 - Arg 1 应该是 Eloquent\Model - 给定集合

javascript - Knockoutjs + Ckeditor 需要帮助解决一些问题