dcat-admin

dcat-admin


数据详情基本使用

<h1>数据详情基本使用</h1> <p><code>Dcat\Admin\Show</code>用来显示数据详情,先来个例子,数据库中有posts表:</p> <pre><code class="language-sql">CREATE TABLE `posts` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `author_id` int(10) unsigned NOT NULL , `title` varchar(255) COLLATE utf8_unicode_ci NOT NULL, `content` varchar(255) COLLATE utf8_unicode_ci NOT NULL, `rate` int(255) COLLATE utf8_unicode_ci NOT NULL, `release_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', `created_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', `updated_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;</code></pre> <p>对应的数据模型为<code>App\Models\Post</code>,数据仓库为<code>App\Admin\Repositories\Post</code>,下面的代码可以显示posts表的数据详情:</p> <pre><code class="language-php">&amp;lt;?php namespace App\Admin\Controllers; use App\Http\Controllers\Controller; use App\Admin\Repositories\Post; use Dcat\Admin\Layout\Content; use Dcat\Admin\Show; use Dcat\Admin\Admin; class PostController extends Controller { public function show($id, Content $content) { return $content-&amp;gt;header('Post') -&amp;gt;description('详情') -&amp;gt;body(Show::make($id, new Post(), function (Show $show) { $show-&amp;gt;id('ID'); $show-&amp;gt;title('标题'); $show-&amp;gt;content('内容'); $show-&amp;gt;rate(); $show-&amp;gt;created_at(); $show-&amp;gt;updated_at(); $show-&amp;gt;release_at(); })); } }</code></pre> <h2>基本使用方法</h2> <h3>HTML内容转义</h3> <p>为了防止XSS攻击, 默认输出的内容都会使用HTML转义,如果你不想转义输出<code>HTML</code>,可以调用<code>unescape</code>方法:</p> <pre><code class="language-php">$show-&amp;gt;avatar()-&amp;gt;unescape()-&amp;gt;as(function ($avatar) { return &amp;quot;&amp;lt;img src='{$avatar}' /&amp;gt;&amp;quot;; });</code></pre> <h3>设置字段宽度</h3> <p>字段宽度默认值为“3”,可以设置1-12之间的数字。</p> <pre><code class="language-php">$show-&amp;gt;created_at-&amp;gt;width(4);</code></pre> <h3>修改面板的样式和标题</h3> <pre><code class="language-php">$show-&amp;gt;panel() -&amp;gt;style('danger') -&amp;gt;title('post基本信息...');</code></pre> <p>style的取值可以是primary、info、danger、warning、default</p> <h3>面板工具设置</h3> <p>面板右上角默认有三个按钮编辑、删除、列表,可以分别用下面的方式关掉它们:</p> <pre><code class="language-php">$show-&amp;gt;panel() -&amp;gt;tools(function ($tools) { $tools-&amp;gt;disableEdit(); $tools-&amp;gt;disableList(); $tools-&amp;gt;disableDelete(); // 显示快捷编辑按钮 $tools-&amp;gt;showQuickEdit(); });</code></pre> <h4>自定义复杂工具按钮</h4> <p>请参考文档<a href="action-show.md">数据详情动作</a></p> <h3>多列布局</h3> <p>使用</p> <pre><code class="language-php">$show-&amp;gt;row(function (Show\Row $show) { $show-&amp;gt;width(3)-&amp;gt;id; $show-&amp;gt;width(3)-&amp;gt;name; $show-&amp;gt;width(5)-&amp;gt;email; }); $show-&amp;gt;row(function (Show\Row $show) { $show-&amp;gt;width(5)-&amp;gt;email_verified_at; $show-&amp;gt;created_at; $show-&amp;gt;updated_at; }); $show-&amp;gt;row(function (Show\Row $show) { $show-&amp;gt;width(3)-&amp;gt;field('profile.first_name'); $show-&amp;gt;field('profile.last_name'); $show-&amp;gt;width(3)-&amp;gt;field('profile.postcode'); });</code></pre> <p>效果 &lt;a href=&quot;{{public}}/assets/img/screenshots/show-rows.png&quot; target=&quot;_blank&quot;&gt; &lt;img class=&quot;img img-full&quot; src=&quot;{{public}}/assets/img/screenshots/show-rows.png&quot;&gt; &lt;/a&gt;</p>

页面列表

ITEM_HTML