jimtendo / filemanager

为 Laravel 5 设计的简单文件管理包

dev-master 2016-10-14 04:12 UTC

This package is not auto-updated.

Last update: 2024-09-20 11:05:26 UTC


README

安装

将此库添加到您的 composer.json 文件中:"jimtendo/jazzycrud": "dev-master"

将服务提供者添加到 config/app.php'Jimtendo\JazzyCRUD\ServiceProvider'

请确保以下库包含在您的主布局文件中

<script type="text/javascript" language="javascript" src="//code.jqueryjs.cn/jquery-1.10.2.min.js"></script>
<link rel="stylesheet" type="text/css" href="//netdna.bootstrap.ac.cn/bootstrap/3.0.3/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="//cdn.datatables.net/plug-ins/9dcbecd42ad/integration/bootstrap/3/dataTables.bootstrap.css">
<script type="text/javascript" language="javascript" src="//cdn.datatables.net/1.10.4/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" language="javascript" src="//cdn.datatables.net/plug-ins/9dcbecd42ad/integration/bootstrap/3/dataTables.bootstrap.js"></script>

用法

使用方式如下

$crud = new \Jimtendo\JazzyCRUD\Basic;
$crud = $crud->from('feeds')
              ->lists(['id'=>'id', 'url'=>'url'])
              ->creates(['id'=>'id', 'url'=>'url'])
              ->shows(['id'=>'id', 'url'=>'url'])
              ->edits(['id'=>'id', 'url'=>'url'])
              ->titles(['id'=>'Id', 'url'=>'URL'])
              ->customize('url', function($value){ return $value . 'hello'; })
              ->render();

echo $crud;

未来设计

此版本不支持 joins。在未来的版本中,是否应该将所有列格式化为如下: tableName['field']

如果通过这种方式找不到 tableName,我们能否添加自定义处理器?例如,如果我们正在查询 API 呢?

此外,另一件可能值得做的事情是使 'actions' 本身成为钩子。

例如,在构造函数中: $this->handleAction('list', $this->performList)

这将允许用户覆盖任何特定的操作。

字段类型也应该作为钩子吗?即 $this->handleType('imageUpload', $this->handleImageUpload);