Download the PHP package dvaknheo/duckadmin without Composer

On this page you can find all versions of the php package dvaknheo/duckadmin. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package duckadmin

DuckAdmin

简介

你一定会见过很多后台系统,都是在基线工程之上做二次开发。但是,这不符合DuckPhp的思维。

DuckAdmin 是个使用 DuckPhp 框架的库,你的工程使用DuckPhp 的功能,不需要魔改。

DuckAdmin 是二次开发的基线库,注意,是基线库,而不是基线工程。

DuckAdmin 只做了公司员工结构的基本代码,通用业务。你可以在这之上添加更多符合公司业务的功能。 甚至还带有 覆盖测试的库。

DuckAdmin 要解决什么问题

  1. 现在的管理后台,二次开发,都是在别家管理后台上改代码,但是 DuckAdmin 独树一帜的是基线库,不是基线工程
  2. 静态资源 和代码分离 ,可部署在不同机器
  3. 这个composer 库里,不仅仅包括 DuckAdmin 还包括了 DuckUser, DuckUserManager ,SimpleBlog 四个独立工程,以及一个独立演示的 DuckAdminDemo 工程。
    1. DuckUser 是个用户基线库,你也可以类似 DuckAdmin 那样在外面修改它
    2. DuckUserManger 则是 用户管理系统
    3. SimpleBlog SimpleBlog 演示了用以上管理系统,用户系统的博客系统。
    4. 甚至还包括了覆盖测试的库。 DuckCoverage ,用于做覆盖测试

演示 demo

扩展需求: sqlite

DuckAdmin 支持 mysql,只需改配置,后面再演示

访问 http://127.0.0.1:8080/ 打开 Demo

重新安装

demo 里

你的数据会保存在 vendor/dvaknheo/duckadmin/demo/runtime/database.db

动态配置文件保存在 vendor/dvaknheo/duckadmin/demo/config/DuckPhpApps.config.php

删除这两个,可重新执行下列安装程序。

正常使用模式

第一种模式:快速 duckphp 工程并应用。

当你想复制 demo 例子,不想做任何操作,执行以下命令

访问 http://127.0.0.1:8080/duck-admin/ 打开管理后台。

第二种模式:独立工程嵌入

当你要给个没有后台系统的 php-fpm 工程里使用。 demo 里的 另一个简洁版本 指向的 main.php 演示的这种情况

composer require dvaknheo/duckadmin

核心功能代码如下

可以看出,多了 skip_404 选项。 当返回404 的时候,自行处理其他业务 这里得到的 admin_id 就是登录后获得的id.

第三种模式,手动修改 duckphp工程嵌入

零代码虽然舒服,但不是最后解决方案

当你熟悉了 duckphp 工程结构之后。

在你的duckphp工程里修改你的 System/App.php 相关 配置

运行

访问 http://127.0.0.1:8080/app/admin/index 打开管理后台。

这里只是 DuckAdmin 后台,不包括demo里的用户系统,用户管理,而博客例子

二次开发

前置知识

一些 duckphp 框架的基础知识不再这里重复

调整选项

DuckAdmin 支持 sqlite /mysql 两种模式的数据库 你可以在选项里切换 database_driver

希望几个版本之后 我们可以在安装程序里切换(目前只能手动切换

静态资源

原生时代,我们直接解压文件在web目录就行。

但是我们要做动态和静态资源分离。减缓服务器压力。

所以我们有了controller_resource_prefix 选项。

那资源文件在哪里呢? src/DuckAdmin/res 目录之下。

你可以设置这个选项为完整的 http 路径,而不使用默认的

也可以设置成 / 开始的绝对路径。 默认是 'res/', 安装程序会把他们复制到相应目录。

资源文件安装要点

因为扯到安装 ,我们设置 controller_resource_prefix ,克隆文件的必要性

接管视图

demo/view/DuckAdmin 目录 就是demo工程调整后的视图

使用 API

在你的工程里

使用 DuckPhp\Foundation\Helper::Admin() 获得 Admin 对象, AdminId($check_login) , AdminName($check_login) 则是获取当前Id, 管理员名称 具体看 DuckPhp的文档, DuckPhp\GlobalAdmin\GlobalAdmin 的类介绍。

使用 DuckPhp\Foundation\Helper::User() 获得 User 通用对象, 具体看 DuckPhp的文档, DuckPhp\GlobalUser\GlobalUser 的类介绍。

修改现有实现

在 duckphp 框架的基础知识,不再阐述。

高级

菜单和权限。 如何在我的控制器里,加入菜单。 参考 demo 里 用户管理系统 的实现。

覆盖测试测试

testname 会在 demo/runtime 目录底下生成 test_coverage 生成报告

其他非 DuckPhp 框架代码如何整合 DuckAdmin 的管理后台系统

登录事件管理

暂缺

Demo 的文件结构

和典型的 DuckPhp 工程一样 System/DemoApp 是入口文件。

我们把主页嵌入到 DemoApp 类里。从而少了控制器目录

View 下是各种对 DuckAdmin 的视图的覆盖

Test 是测试覆盖

runtime 是数据库文件

TODO

缺乏 validor 验证系统 本来用 thinkphp 的应该可以,可惜太过复杂,后面版本又专一

缺乏 表单生成器, 这其实不重要。


All versions of duckadmin with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2.0
gregwar/captcha Version ^1.1
dvaknheo/workermanhttpd Version 1.0.6
dvaknheo/duckphp Version ^1.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package dvaknheo/duckadmin contains the following files

Loading the files please wait ....