openbuildings/jam
Composer 安装命令:
composer require openbuildings/jam
包简介
Small but feature rich ORM, has extensible models and builders, baked in upload functionality, supporting multiple backends (rackspace, ftp), polymorphic associations, form builders, nested forms, validators
README 文档
README
Jam is a small ORM for Kohana 3.3+ that builds on top of Jelly - the project was originally started by Jonathan Geiger and co-developed by Paul Banks.
Jam adds some much needed features to Jelly project:
- Lazy loading of collections
- Modifying Collections on the fly and saving the changes
- Extending Builder, Model and Meta classes with mixins
- Sane validation checks that don't always throw exceptions
- Mass assignment of related models with arrays (easy nested forms)
- Associations separate from Fields - more powerful and easier to extend
- Polymorphic Associations (MTI(Multiple Table Inheritance))
- A lot of tweaks to the api to make it more consistent and to remove redundancy
- Upload Files with temporary directory to survive validation fail (do not upload images twice in forms)
- Upload File Servers - Local, FTP and Rackspace
- Automatically store Uploaded images width / height to relevant fields
- Built In Popular behaviors - Paranoid, Sluggable, Nested, Sortable, Uploadable
- Updated files to the Kohana convention (inside kohana directory)
- Versitile form builder with automattic error display
As the original Jelly had a lot of great but undocumented functionality this guide will try to write about both about the new features and the hidden gems of Jelly, as a more comprehensive guide.
Jam
- Getting Started
- Writing Models & Builders
- Validators
- Fields
- Uploads
- Associations
- Builder
- Behaviors
- Form Builder
Support
Supports the following PHP versions:
- PHP 5.4
- PHP 5.5
- PHP 5.6
- PHP 7
- HHVM
Works with MySQL using either the PDO or MySQL driver of Kohana Database module.
Jam was developed by the Clippings Team as part of Clippings.com.
The guide itself is heavily influenced by Rails Guides - they did amazing work of creating an accessible documentation and as I'm not much of a writer I've tried to follow their example as much as possible.
openbuildings/jam 适用场景与选型建议
openbuildings/jam 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 181.36k 次下载、GitHub Stars 达 31, 最近一次更新时间为 2013 年 02 月 01 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「database」 「orm」 「upload」 「validation」 「form builder」 「kohana」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 openbuildings/jam 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 openbuildings/jam 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 openbuildings/jam 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Dibi is Database Abstraction Library for PHP
Kinikit - PHP Application development framework MVC component
Store your language lines in the database, yaml or other sources
The file manager intended for using Laravel with CKEditor / TinyMCE / Colorbox
PHP Database ORM for Symfony1. Do NOT use for new projects: please move to a newest Symfony release and Doctrine2
A package for automatically encrypting and decrypting Eloquent attributes in Laravel 5.5+, based on configuration settings.
统计信息
- 总下载量: 181.36k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 32
- 点击次数: 34
- 依赖项目数: 16
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2013-02-01