mfcc / noodle
此包已被废弃且不再维护。没有建议的替代包。
功能强大且灵活的内容管理系统。
dev-master
2014-08-21 13:12 UTC
Requires
- php: >=5.3.3
- bjyoungblood/bjy-authorize: 1.4.0
- doctrine/doctrine-orm-module: dev-master
- evandotpro/edp-module-layouts: dev-master
- joacub/file-bank: 0.0.1.x-dev
- rwoverdijk/assetmanager: 1.3.*
- smottt/wideimage: dev-master
- webino/webino-image-thumb: 1.*
- widop/google-analytics: *
- zendframework/zendframework: 2.3.*
This package is auto-updated.
Last update: 2021-07-01 00:09:53 UTC
README
mfcc-noodle
注意:此项目仍在积极开发中。使用风险自负。
易于使用,易于实现,超级灵活且模块化的内容管理系统,基于Zend Framework 2和Twitter Bootstrap。
著名9步安装,创建带有管理员的网站
- 安装Zend Skeleton App(可选)
- 在composer中添加mfcc-noodle依赖
"mfcc/noodle": "dev-master"
- 没有第3步
- 将
config.dist
文件从vendor/mfcc/noodle/config
复制到config/autoload
并设置 - 如果没有,设置doctrine连接驱动
- 将
cli-config.php
从vendor/mfcc/noodle
复制到项目根目录 - 运行
php vendor/doctrine/orm/bin/doctrine orm:schema-tool:update --force
来创建数据库 - 设置默认管理员用户
- 创建您的实体,并在每次更新后运行
php vendor/doctrine/orm/bin/doctrine orm:schema-tool:update --force
如何创建自己的模块
- 在
Noodle\Entity\Tables
中创建自己的实体 - 为您的实体创建相应的表。
- 将您的实体添加到模块表中
捆绑的数据类型和选项
TBS
如何创建自己的数据类型
- 基于Zend Form Elements之一创建自己的表单元素
- 如有需要,实现
prepare()
、treatValueBeforeSave()
和getListedValue()
。 - 在您的实体中使用数据类型,如下所示
/** * @ORM\Column(type="string"); * @Annotation\Type("Your\Datatype\Namespace") * @Annotation\Options({"label":"Your label"}) * @Annotation\Required(true) */ public $title;
如何创建自己的自定义模块
Noodle已准备好用于供应商模块。只需监听此事件即可
$events->getSharedManager()->attach('Noodle\Service\ModulesService', 'vendorModules.load', function ($e) { $e->getTarget()->addVendorModule('your_module_service'); });
供应商模块必须实现TODO
。
如何创建仪表板小部件
将视图助手附加到共享事件管理器事件
$events->getSharedManager()->attach('Noodle\Controller\IndexController', 'dashboard', function ($e) { $e->getTarget()->addDashboardModule('some_helper_service'); });
如有需要,使用并保存noodle选项为您的部件。
注意:如果您使用自己的选项设置,请小心,以避免命名空间冲突。
在您的助手中
$optionService = $this->getServiceLocator()->getServiceLocator()->get('noodleOptions'); $optionService->setOption('your_widget_namespace.your_option_key', option_value); $optionService->getOption('your_widget_namespace.your_option_key');
小部件将通过您的助手public function __invoke(){}
方法进行渲染
请参考Noodle\View\Helper\Dashboard\GoogleAnalytics
。
选项设置
您可以使用以下方法在任何地方设置和获取noodle选项设置
$optionService = $this->getServiceLocator()->getServiceLocator()->get('noodleOptions'); $optionService->setOption('some_widget_namespace.some_option_key', option_value); $optionService->getOption('some_option_key');
TODOS
- 从实体自动创建表
- 在gui中管理表
- 编写干净的代码并提供接口
- 添加用户角色管理
- 为Noodle\Entity\Tables设置绝对命名空间路径,并将基本表设置为扩展的基础