定制 imonroe/crps 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

imonroe/crps

Composer 安装命令:

composer require imonroe/crps

包简介

Cold Reader Persistent Storage system

README 文档

README

CRPS is the Coldreader Persistent Storage system. On its own, you may not find it very useful; it doesn't have any front-end information in it at all. For a working, real-world implementation, please install the full Coldreader project.

CRPS is designed to be a databasing system for when you don't know in advance what kind of information you want to store. It implments a data model where you have a bunch of arbitrary subjects, each of which has an arbitrary number of Aspects.

Aspects can be thought of as some kind of fact or content that is relevant to its Subject. Aspect data is stored in the database as text, in the broad sense. JSON counts as text, for instance, as do hyperlinks, markup, etc. In addition to storing data, Aspects can be purely functional--a call to an external API, a web scraper to grab a bit of content from elsewhere, and so forth. Each type of Aspect has a display method that produces the markup for use in templates. Additionally, each type of Aspect also has a parse() function which can be called automatically by scheduled jobs. From this function, an Aspect may perform actions on the data model; fetching new data from an external source, updating its own value, or creating/updating other Subjects or Aspects.

New Aspect Types are easy and quick to build. Upon creation, the new Aspect Type will automatically add new boilerplate code for the necessary GUI forms (via the Laravel Collective Form API) and override methods; an Aspect Type definition is an OOP child class of the parent Aspect Type and inherits its methods. Custom Aspect Types can also be child classes of other custom Aspect Types, so if you build an APIResultsAspect class, you can make a FacebookAPIResultsAspect class that inherits the work you've already done for APIResultsAspect, for instance.

Dependencies

  • Laravel 5.4+
  • laravelcollective/html 5.4+
  • spatie/laravel-medialibrary 6+
  • league/commonmark 0.16+
  • imonroe/mimeutils 0.1+

Install

Via Composer

$ composer require imonroe/crps

Usage

$subject = new Subject;
foreach ($subject->aspects() as $aspect){
	$aspect->display_aspect();
}

Change log

Please see CHANGELOG for more information on what has changed recently.

Testing

$ composer test

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please email ian@ianmonroe.com instead of using the issue tracker.

Credits

  • [Ian Monroe][link-author]
  • [All Contributors][link-contributors]

License

GPL V3. Please see License File for more information.

统计信息

  • 总下载量: 72
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-or-later
  • 更新时间: 2017-08-11

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固