【发布时间】:2018-02-26 13:33:41
【问题描述】:
迁移(php artisan 迁移)
我正在为我的应用程序使用 laravel。我读过 laravel 文档,他们说:“如果您曾经不得不告诉队友手动将列添加到他们的本地数据库架构中,那么您就遇到了数据库迁移解决的问题。”
但我正在与我的 2 名团队成员一起工作,我们使用的是实时数据库服务器。我更改的所有内容都将进入实时数据库,并且所有人都找到了。 如果我使用 live db,我应该使用 db 迁移,因为 DOC 说它对本地 db 有用吗?
模型类
我仅将模型类用于身份验证(用于表用户和角色)。对于我的所有查询结果,我使用了原始 sql 查询,例如:
$hal = DB::select('SELECT TotalForeignTruck,
(( UNIX_TIMESTAMP(truck_receivedate)- UNIX_TIMESTAMP(truck_entrydate))/60/60/24) AS HoltageDay
FROM(
SELECT
(SELECT truck_entry_regs.truckentry_datetime FROM truck_entry_regs WHERE truck_entry_regs.manf_id=m.id ORDER BY truck_entry_regs.id ASC LIMIT 1)AS truck_entrydate,
(SELECT truck_entry_regs.receive_datetime FROM truck_entry_regs WHERE truck_entry_regs.manf_id=m.id ORDER BY truck_entry_regs.id DESC LIMIT 1)AS truck_receivedate,
(SELECT COUNT(truck_entry_regs.id) FROM truck_entry_regs WHERE truck_entry_regs.manf_id=m.id )AS TotalForeignTruck
FROM manifests m
WHERE m.manifest=? ) t', [$r->mani_No]);
return json_encode($hal);
我正在使用它(sql raw),因为我可以在 sqlyog 中检查我的复杂查询,然后粘贴到我的控制器函数中。我不确定是否可以在使用模型类的 eloquent 查询中进行一些复杂的查询。
我的问题是,无论是实时数据库还是本地数据库,我都应该始终使用迁移吗? 我应该总是为我的所有表使用模型类吗? 即使我处于生产模式,我是否应该使用迁移(我的意思是如果在应用程序上线时需要我的客户进行一些修改)? 迁移可以实时进行吗?
我做错了吗?如何正确使用 laravel 功能?
【问题讨论】: