打算使用laravel现有的数据库上做开发,会有哪些坑

打算使用laravel现有的数据库上做开发,会有哪些坑,第1张

laravel ORM支持多数据库,但mongodb需要用插件:jenssegers/laravel-mongodb · GitHub

1、表名问题不大,关键是你的表是适合MVC结构的,spring应该差不多,要玩转laravel,还是要使用Eloquent ORM,这样你需要给你的表建立对应的entity(也就是model),然后通过model建立好表间关系。另外有个插件可以 从现有的表 直接生成 migration,你可以试试。

2、数据库事件 主要通过模型事件来完成:

Project::creating(function($project) { }); //

Project::created(function($project) { });

Project::updating(function($project) { }); //

Project::updated(function($project) { });

Project::saving(function($project) { }); //

Project::saved(function($project) { });

Project::deleting(function($project) { }); //

Project::deleted(function($project) { });

还是比较简单的

Laravel框架中的DB类让我们可以方便的进行数据库 *** 作,比如常见的query查询:

DB::query('SELECT FROM users');

Larvel还提供了类似CI框架中Active Record的Fluent Query Builder : DB::table('user')->where('id','=','1')->get();

虽然从 *** 作上和普通查询相差不大,但是需要注意到是Laravel的查询结果和原生查询不同。

简单建立一个contents表测试下,表里有content字段,我们查询一下:

$content = DB::table('contents')->where('id','=','1')->get();

最后打印一下$content变量看看有什么不同:

array(1)

{

[0]=> object(stdClass)#31 (1) {

["content"]=> string(24) "这是一个测试~~" }

}

从上面可以知道查询的结果是一个包含对象的数组,因此我们要取得content值就必须先迭代:

foreach($contents as $content)

{ echo $content->content;

}

总体来说Laravel的数据库 *** 作很容易上手。

、Bundle是Laravel的扩展包组织形式或称呼。Laravel的扩展包仓库已经相当成熟了,可以很容易的帮你把扩展包(bundle)安装到你的应用中。你可以选择下载一个扩展包(bundle)然后拷贝到bundles目录,或者通过命令行工具“Artisan”自动安装。

2、在Laravel中已经具有了一套高级的PHP ActiveRecord实现 -- Eloquent ORM。它能方便的将“约束(constraints)”应用到关系的双方,这样你就具有了对数据的完全控制,而且享受到ActiveRecord的所有便利。Eloquent原生支持Fluent中查询构造器(query-builder)的所有方法。

3、应用逻辑(Application Logic)可以在控制器(controllers)中实现,也可以直接集成到路由(route)声明中,并且语法和Sinatra框架类似。Laravel的设计理念是:给开发者以最大的灵活性,既能创建非常小的网站也能构建大型的企业应用。

以上就是关于打算使用laravel现有的数据库上做开发,会有哪些坑全部的内容,包括:打算使用laravel现有的数据库上做开发,会有哪些坑、laravel 怎么用原生态的mysql查询、laravel用的是什么数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9672655.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存