RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 760286
Accepted
Гончаров Александр
Гончаров Александр
Asked:2020-12-19 09:19:05 +0000 UTC2020-12-19 09:19:05 +0000 UTC 2020-12-19 09:19:05 +0000 UTC

带有 MVC 和 ActiveRecord 的非商店 Web 应用程序的 PHP 框架

  • 772

那些使网站/服务与商店和博客/名片网站完全不同的人很熟悉在选择骨架时陷入昏迷的故事。结果,每个新项目的骨架都是通过“从旧项目中删除所有不必要的东西,这是骨架!”的方法获得。我真的很想打破这个恶性循环,因为也许有优质的骷髅?现在具体来说:

所谓骨架,是指开箱即用的框架(例如 yii、zend)和 CMS(例如 wordpress、bitrix)之间的东西。也就是说,不仅仅是架构设备,它给出了框架。我们还需要“订阅中”的非常基本的模块。我们特别需要什么骨架,可能对于许多人来说:

  1. 基于任何框架MVC,具有模块化结构
  2. 与数据库打交道ActiveRecord,欢迎光临ORM
  3. 它具有板载系统模块 - 处理具有切换存储能力的文件 ( Storage),一组用于常见事物的组件(如技术支持票证、标签、搜索、错误记录等模块Utility)。
  4. 通过社交网络获得授权的用户模块,可能需要一些个人数据才能获得完整状态 ( User)。不需要,但最好使用 SMS/电子邮件/网站通知模块。
  5. 内容页面的简约工作 ( Article)。
  6. 可选,但可取 - 支付模块:用户余额、服务和订阅、获取 ( Billing)。

甚至不需要管理面板,尤其是不需要编译 css、构建反应(如在 magento 中)等系统内容。

问题是在线商店、博客和名片大多是为网络而标记的。一旦需要另一个服务,我们要么不得不将繁琐的代码拖到我们身后,要么从头开始编写(甚至不知道哪个更快更好)。可以削减现有 CMS 之一的模块 - 但首先:我不记得积极使用的免费 CMS ActiveRecord(这是一个重要要求),其次,它们都非常混乱:也就是说,升级是针对来自 CMS/模块作者和自定义模块的更新,而不是在代码的“添加”下进行的。即使您不顾一切地选择添加 CMS,这也是拒绝更新 - 而这反过来又使系统在安全性方面的寿命很短。

但也许我们落后了,已经有很多这样优质的骷髅了?还是没有其他选择?请告诉我哪些产品值得关注。

PS这个问题并不完全属于SO的主题,因为它在答案中提出了关于骨架的意见,但是,对于作者来说,它非常热门且相关。

php
  • 3 3 个回答
  • 10 Views

3 个回答

  • Voted
  1. Alex
    2020-12-19T13:50:46Z2020-12-19T13:50:46Z

    首先想到的是MaxSite CMS ,它本身基于 CodeIgniter MVC 框架,并且专注于您将自己添加模块和小部件这一事实。但总的来说,没有完全通用的解决方案,在这里您要么忍受现有 CMS 的缺点,要么编写自己的东西来满足您的目标

    • 3
  2. Best Answer
    A K
    2020-12-19T18:36:26Z2020-12-19T18:36:26Z

    我可以建议将 Laravel 框架与 Sleeping Owl 管理员结合使用,以创建典型的 crud 操作。

    Laravel 是欧洲最流行的 PHP 引擎之一,现在已成为欧洲事实上的标准。作为确认,我可以提供指向stackoverflow 趋势的链接。

    满足什么要求:

    • 模块化结构
    • mvc 开箱即用(然而,现在所有流行的引擎中都有),支持路由、控制器、中间件等。
    • 开箱即用的 ActiveRecord 和开箱即用的 ORM(考虑到模块化 - 可以用其他选项替换)
    • 有一个用于处理文件系统的模块(一个不仅支持本地文件,还支持云文件系统的抽象)
    • 开箱即用地与社交网络集成,您可能必须为某些社交网络编写自己的提供程序 - 但安装 Socialite 软件包更容易

    Crud 管理员不是引擎的一部分,您需要将第三方解决方案放在首位。最受欢迎的管理员之一 - Sleeping Owl,得到了俄语社区的支持,用它来打屁股是一种乐趣。

    处理内容页面也是管理面板的一部分——这就是我在本段中描述它的原因。

    盒子里没有的东西:

    • 使用票证
    • 计费
    • 购物车(您可以搜索现成的模块,例如Crinsane或创建您自己的)
    • 3
  3. Alexander Ronin
    2020-12-23T00:02:13Z2020-12-23T00:02:13Z

    我推荐 Yii2 框架。在我看来,这是我使用过的所有框架和 CMS 中最好的平台。你要求的一切都在那里。如果你选择一个框架,那么只有 Yii2,没有 Laravel,正如他们在另一个答案中所说的那样!Yii2 中的功能甚至没有一半。我将在您的上下文中具体列出主要优势:

    1. 强大的内置代码生成工具。任何复杂的管理面板都会立即被标记,并且代码中没有任何错误。
    2. 有很多为 Yii 编写的扩展,这些都远非基本模块。你可以找到任何东西。

    ActiveRecord、小部件、RESTful API、文档生成、PJAX(您通常会忘记在后端编写 AJAX)、强大的 RBAC 角色系统、用于扫描整个项目的 I18N、将应用程序分为前端和后端等等。一减——进入门槛不小。在同一个 Laravel 中,开始会容易得多,但机会会少得多。

    祝您选择顺利!;)

    • 0

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    Python 3.6 - 安装 MySQL (Windows)

    • 1 个回答
  • Marko Smith

    C++ 编写程序“计算单个岛屿”。填充一个二维数组 12x12 0 和 1

    • 2 个回答
  • Marko Smith

    返回指针的函数

    • 1 个回答
  • Marko Smith

    我使用 django 管理面板添加图像,但它没有显示

    • 1 个回答
  • Marko Smith

    这些条目是什么意思,它们的完整等效项是什么样的

    • 2 个回答
  • Marko Smith

    浏览器仍然缓存文件数据

    • 1 个回答
  • Marko Smith

    在 Excel VBA 中激活工作表的问题

    • 3 个回答
  • Marko Smith

    为什么内置类型中包含复数而小数不包含?

    • 2 个回答
  • Marko Smith

    获得唯一途径

    • 3 个回答
  • Marko Smith

    告诉我一个像幻灯片一样创建滚动的库

    • 1 个回答
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Алексей Шиманский 如何以及通过什么方式来查找 Javascript 代码中的错误? 2020-08-03 00:21:37 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    user207618 Codegolf——组合选择算法的实现 2020-10-23 18:46:29 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5