amethyst / common
v0.3.3
2024-03-28 17:00 UTC
Requires
- php: >=8.1
- doctrine/inflector: ^2.0
- laravel/framework: 9.* | 10.*
- laravel/helpers: ^1.2
- league/fractal: ^0.17.0
- railken/bag: ^2.0
- railken/cacheable: 0.2.*
- railken/eloquent-instance: ^2.0
- railken/eloquent-mapper: 0.4.*
- railken/lem: ^4.0
Requires (Dev)
- dev-master
- v0.3.3
- v0.3.2
- v0.3.1
- v0.3.0
- v0.2.17
- v0.2.16
- v0.2.15
- v0.2.14
- v0.2.13
- v0.2.12
- v0.2.11
- v0.2.10
- v0.2.9
- v0.2.8
- v0.2.7
- v0.2.6
- v0.2.5
- v0.2.4
- v0.2.3
- v0.2.2
- v0.2.1
- v0.2.0
- v0.1.50
- v0.1.49
- v0.1.47
- v0.1.46
- v0.1.45
- v0.1.44
- v0.1.43
- v0.1.42
- v0.1.41
- v0.1.40
- v0.1.39
- v0.1.38
- v0.1.37
- v0.1.36
- v0.1.35
- v0.1.34
- v0.1.33
- v0.1.32
- v0.1.31
- v0.1.30
- v0.1.29
- v0.1.28
- v0.1.27
- v0.1.26
- v0.1.25
- v0.1.24
- v0.1.23
- v0.1.22
- v0.1.21
- v0.1.20
- v0.1.19
- v0.1.18
- v0.1.17
- v0.1.16
- v0.1.15
- v0.1.14
- v0.1.13
- v0.1.12
- v0.1.11
- v0.1.10
- v0.1.9
- v0.1.8
- v0.1.7
- v0.1.6
- v0.1.5
- v0.1.4
- v0.1.3
- v0.1.2
- v0.1.1
- v0.1.0
This package is auto-updated.
Last update: 2024-08-28 18:11:34 UTC
README
这是所有Amethyst包的核心。
需求
- PHP 8.1及以上
安装
您可以通过Composer安装它,输入以下命令
composer require amethyst/core
该包将自动注册自己。
彻底映射
Amethyst通过映射所有模型、关系和属性获得许多优势;它做了很多工作,以至于每个包都需要它
- 每个模型实例都必须转换为一个可读的字符串(例如,类名或形态名),反之亦然。
- 给定一个模型实例,应该可以检索所有关系。
- 给定一个模型实例,应该可以检索所有属性。
注意:重要的是要注意我们指的是模型实例,而不是模型类。
那么好处是什么呢?
因为拥有这类信息会让很多事情变得简单(例如,自动连接,创建视图)
如何实现和扩展
所有Amethyst包都自动映射,这是因为映射使用amethyst
下的配置来检索所有模型
这是通过使用包eloquent-mapper来实现的。
如何与数据交互
有两种方式可以与数据交互:通过代码或通过HTTP调用
代码
HTTP调用
每个数据都有以下操作:- '创建新记录' - '检索单个记录' - '更新单个记录' - '删除单个记录' - '显示多条记录' - '删除多条记录' - '更新多条记录'
如何自定义数据
用于处理数据的关键包之一是lem。此包提供了一种定义模式、验证、授权、序列化和处理错误的方法;所有这些都被一个名为Manager
的类封装。
https://github.com/amethyst-php/cli
测试
- 克隆此存储库
- 将默认的
phpunit.xml.dist
复制到phpunit.xml
- 根据需要更改环境变量
- 启动
./vendor/bin/phpunit