ActiveRecord语言实现PHP、Python、Node.js

简介: ActiveRecord语言实现PHP、Python、Node.js

以下框架都实现了两种查询方式

Query Builder + ORM

Laravel

Eloquent ORM : https://laravel.com/docs/7.x/eloquent

代码示例

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
// 定义
class Flight extends Model
{
    //
}
// 使用
DB::table('users')->where('votes', '=', 100)->get();
$flight = App\Flight::where('number', 'FR 900')->first();

ThinkPHP

文档 https://www.kancloud.cn/manual/thinkphp5/135176

ThinkPHP7.0之后单独拆开

ThinkORM: https://www.kancloud.cn/manual/think-orm/

<?php
namespace app\index\model;
use think\Model;
// 定义
class User extends Model
{
}
// 使用
Db::name('user')->where('id','>',10)->select();
// 或者
User::where('id','>',10)->select();

Orator ORM

文档 https://github.com/sdispater/orator

# 定义
class User(Model):
    pass
# 使用
db.table('users').where('age', '>', 25).get()
# 或者
users = User.where('votes', '>', 100).take(10).get()

AdonisJs

Lucid models https://adonisjs.com/docs/4.1/lucid

'use strict'
const Model = use('Model')
const Database = use('Database')
// 定义
class User extends Model {
}
// 使用
Database
      .table('users')
      .where('username', 'john')
      .first()
// 或者
const adults = await User
  .query()
  .where('age', '>', 18)
  .fetch()

总结

目前(2020.3)的一些参数比较

框架

语言

最新版本

Github Star

Github

Laravel

PHP

7.x

58.1k

Github

AdonisJs

Node.js

5.0

7.9k

Github

ThinkPHP

PHP

5.0

2.8k

Github

Orator

Python

0.9.9

1.1k

Github


除了ThinkPHP有完整的中文文档之外,其他框架都是英文的或翻译版

相关文章
|
3月前
|
程序员 Go PHP
为什么大部分的 PHP 程序员转不了 Go 语言?
【9月更文挑战第8天】大部分 PHP 程序员难以转向 Go 语言,主要因为:一、编程习惯与思维方式差异,如语法风格和编程范式;二、学习成本高,需掌握新知识体系且面临项目压力;三、职业发展考量,现有技能价值及市场需求不确定性。学习新语言虽有挑战,但对拓宽职业道路至关重要。
93 10
|
3月前
|
JavaScript 前端开发 Python
用python执行js代码:PyExecJS库
文章讲述了如何使用PyExecJS库在Python环境中执行JavaScript代码,并提供了安装指南和示例代码。
157 1
用python执行js代码:PyExecJS库
|
1月前
|
JSON 前端开发 JavaScript
聊聊 Go 语言中的 JSON 序列化与 js 前端交互类型失真问题
在Web开发中,后端与前端的数据交换常使用JSON格式,但JavaScript的数字类型仅能安全处理-2^53到2^53间的整数,超出此范围会导致精度丢失。本文通过Go语言的`encoding/json`包,介绍如何通过将大整数以字符串形式序列化和反序列化,有效解决这一问题,确保前后端数据交换的准确性。
35 4
|
1月前
|
PHP 容器
03 PHP语言基础知识
路老师的PHP教程系列,带你深入学习PHP语言。从常量、变量、操作符到表达式和函数,全面覆盖基础知识,助你快速入门并掌握核心技术。每天坚持学习,轻松成为PHP高手!
31 2
|
3月前
|
JavaScript Java PHP
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
本文是第二天的PHP学习笔记,涵盖了PHP中运算符的使用、类型转换方式,以及打印输出语句的特点,展示了其相较于其他编程语言的一些特殊之处。
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
|
2月前
|
XML 监控 JavaScript
JavaScript 语言对企业上网监控的技术支持
在数字化企业环境中,上网监控对企业信息安全和提升员工效率至关重要。JavaScript 作为广泛应用的脚本语言,提供了强大的技术支持,包括数据获取与分析、与服务器端交互、监控页面加载时间和网络活动,助力企业有效管理上网行为,保障信息安全。
33 6
|
3月前
|
JavaScript 前端开发 Python
python执行js代码
本文档详细介绍如何安装Node.js环境及PyExecJS库,并提供示例代码展示其功能。首先,通过指定链接安装Node.js,安装完毕后可在命令行中输入`node --version`来验证安装是否成功。接着,使用`pip install PyExecJS`安装PyExecJS库,该库允许Python程序执行JavaScript代码。文档还提供了多个示例代码,展示了如何在Python环境中执行和编译JavaScript代码,并可以选择特定的JavaScript运行时环境,如Node.js或JScript。最后,通过具体案例展示了PyExecJS的功能与使用方法。
42 3
|
3月前
|
算法 程序员 Go
PHP 程序员学会了 Go 语言就能唬住面试官吗?
【9月更文挑战第8天】学会Go语言可提升PHP程序员的面试印象,但不足以 solely “唬住” 面试官。学习新语言能展现学习能力、拓宽技术视野,并增加就业机会。然而,实际项目经验、深入理解语言特性和综合能力更为关键。全面展示这些方面才能真正提升面试成功率。
60 10
|
3月前
|
IDE 关系型数据库 PHP
php语言学习
【9月更文挑战第1天】php语言学习
40 3
|
3月前
|
SQL 关系型数据库 MySQL
PHP语言
【9月更文挑战第1天】PHP语言
35 2
下一篇
DataWorks