我正在寻找一种方法来使用Eloquent ORM映射项目中的现有表,并在代码中使用它们。我使用MySQL数据库并计划迁移到MSSQL。任何方式点赞赏。
答案 0 :(得分:10)
您必须手动执行此操作。
即,使用eloquent为您希望在代码中访问的每个表创建一个雄辩的模型。
如果您没有名为created_at和updated_at的时间戳,则可以在模型中禁用这些列。
如果您有用户表,则可以使用模拟文件夹中的user.php
文件“映射”它,如下所示
class User extends Eloquent {
protected $table = 'users';
public $timestamps = false;
}
您可以使用Jeffrey Ways Laravel Generators来简化模型的初始创建,但您仍需要手动修改时间戳。
答案 1 :(得分:6)
这看起来像一个旧帖子,但它是在几天前编辑的,所以我不知道原作者是否在寻找解决方案,但如果有人需要这些信息,这里有一个包装Laravel 5的包装可以满足您的要求。
现有架构的Laravel 5模型生成器: https://packagist.org/packages/ignasbernotas/laravel-model-generator
希望能帮助别人!
答案 2 :(得分:2)
还有一个Eloquent Model Generator库。它可以用于使用数据库表作为源生成Eloquent模型。生成的模型将包括关系方法,魔术场和关系的docblock以及其他几个属性。
答案 3 :(得分:1)
另一个在这里:https://github.com/Xethron/migrations-generator。
您只想将这些生成器用于本地开发,因此您不希望在config / app.php中更新生产提供程序数组。而是在app / Providers / AppServiceProvider.php中添加提供程序。
有关详细信息,请查看此处 - https://packagist.org/packages/ignasbernotas/laravel-model-generator#user-content-installation
答案 4 :(得分:0)
您还可以使用SQL Server迁移助手(SSMA)将数据库移植到SQL Server,但您仍需要编写自己的模型以匹配架构。
http://blogs.msdn.com/b/ssma/ http://www.microsoft.com/en-us/download/details.aspx?id=43688
这可能有助于从困境的两边到达那里。