sunnirvana

2143 经验值

有多个sqlite数据库源文件,没有放在app\config\database.php中管理,但是自己想使用Laravel的数据库driver来操作这些数据,有什么办法在操作数据库前,更改connections->'sqlite'->'database'的值呢?

'connections' => [

        'sqlite' => [
            'driver'   => 'sqlite',
            'database' => database_path('database.sqlite'), <== 我想更换的数据源文件
            'prefix'   => '',
        ],

        'mysql' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST', 'localhost'),
            'database'  => env('DB_DATABASE', 'forge'),
            'username'  => env('DB_USERNAME', 'forge'),
            'password'  => env('DB_PASSWORD', ''),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
            'engine'    => null,
        ],
    ],

之前也Google到了两个帮助信息,不过都是如何切换在database.php中已经配置了的数据库的,在我需求中,把所有sqlite数据库都放在database.php中不太现实。

http://fideloper.com/laravel-multiple-database-connections

http://stackoverflow.com/questions/31847054/how-to-use-multiple-database-in-laravel

非常感谢!!!

1.install VirtualBox (这个没啥变化, 16年1月6日最新版本是 5.0.14 r105127) 2.install vagrant (已经变成 1.8.1版了) 3.下载最新的 homestead 盒子(版本是0.4.0 php默认7.0.1) 4.用外挂文件的方式添加盒子 vagrant box add laravel/homestead /data/laravel/sof

此文章仅是Laravist群中Abraham同学在日常聊天对PHP、对Laravel、对项目的一些杂谈的简单整理. Abraham,给人感觉是一位在PHP语言方面理解比较深的人 laravel以及MVC 1.个人粗浅的理解,所谓业务逻辑就是验证表单,发短信,发邮件,查询转成数据库sql等等,这些除了数据库查询之外常用的东西,也包括构造页面的标题了,或者 ajax 接口生成 json 结果这些琐碎的

查看聊天记录过程中,Get到一个新技能,正则表达式/\p{Han}/u可以匹配汉字 关于 \p{Han} 资料可以看:Unicode诸问题 的Unicode Script部分,如果不理解里面的开启Unicode模式,看下面的 u (查了半天Unicode模式,原来就是u模式修饰符) 关于 u 资料可以看:模式修饰符 自问自答~~~

还是我的表设计有问题,应该做成这样:
表:

  • Table A (id, name)

  • Table B (id, A_id, name)

  • Table C (id, B.id)

谢谢,这么快的回复。
如果改下C的结构
比如 Table C (id, B.name_A.id),将B.name和A.id做成一个字段的话,hasMany可以做到吗?B中的两个字段关联到C的一个字段。

表:

  • Table A (id, name)

  • Table B (id, A_id, name)

  • Table C (id, A_id, B_name)

关系:

  • A.id --(1:n)--- B(A_id), C(A_id) 主外键关系

  • B.name ----(1:n)---- C(B_name) 无主外键关系

问题:

  1. 无主外键数据库关系,能用ORM建立关联吗?

  2. 在B与C建立关联的时候,因为他们必须同时属于同一个A_id,可以再hasMany中限定吗?

这是个单纯的json文件,和Model放在一起,Model需要读取和解析它,可是我用file_get_content(./config.json)会提示找不到config.json文件,所以就不清楚model在运行状态下的路径是什么了。

在Laravel工程里,准确的说是在app目录下,创建了一个配置文件。
请问在Model里,如何访问这个文件(file_get_contents(????)),它的相对路径是什么呢?

官网的方法是:
<meta name="csrf-token" content="{ csrf_token() }">

$.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
});

Link