PHPackages                             bacao/laravel-admin-hasmany-extra - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. bacao/laravel-admin-hasmany-extra

ActiveLibrary[Admin Panels](/categories/admin)

bacao/laravel-admin-hasmany-extra
=================================

Laravel-admin helpers for hasMany multiple image upload and nested conditional fields.

1.0.1(3mo ago)00MITPHPPHP &gt;=7.2.5

Since Apr 2Pushed 3mo agoCompare

[ Source](https://github.com/song0223/laravel-admin-ext-hasmany)[ Packagist](https://packagist.org/packages/bacao/laravel-admin-hasmany-extra)[ Docs](https://github.com/laravel-admin-ext/hasmany-extra)[ RSS](/packages/bacao-laravel-admin-hasmany-extra/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (3)Used By (0)

hasmany-extra
=============

[](#hasmany-extra)

`laravel-admin` 扩展，提供两块能力：

- `hasMany` 里的多图上传、排序、删除
- `hasMany/NestedForm` 里的原生链式 `->when(...)` 条件显示
- `hasMany/NestedForm` 里的 `table(...)` JSON 表格兼容

安装
--

[](#安装)

```
composer require bacao/laravel-admin-hasmany-extra
```

字段注册
----

[](#字段注册)

扩展安装后会自动注册：

```
$form->hasmanyExtraMultipleImage('banner', 'Banner');
```

如果你想保持旧项目里的方法名，也可以在项目自己的 `app/Admin/bootstrap.php` 里再加一行：

```
\Encore\Admin\Form::extend('hasmanyMultipleImage', \Encore\HasmanyExtra\Fields\HasManyMultipleImage::class);
```

多图上传
----

[](#多图上传)

多图上传的值解析、旧图排序同步、单张删除都已经内置：

```
$form->hasMany('items', '商品项目', function (Form\NestedForm $form) {
    $form->hasmanyExtraMultipleImage('banner', 'Banner图')
        ->uniqueName()
        ->removable()
        ->sortable();
});
```

条件显示
----

[](#条件显示)

安装这个扩展后，`hasMany` 里的 `radio()->when(...)` 可以直接按 laravel-admin 原生写法使用：

```
$form->hasMany('items', '商品项目', function (Form\NestedForm $form) {
    $form->radio('type', '类型')->options([
        1 => '厨师介绍',
        2 => '餐品介绍',
        3 => '菜单介绍',
        4 => '酒店介绍',
    ])->when(3, function (Form\NestedForm $form) {
        $form->textarea('menu', '菜单');
    });
});
```

hasMany 里的 table
----------------

[](#hasmany-里的-table)

在 `NestedForm` 里可以继续按接近 laravel-admin 原生的写法使用(目前只支持text和textarea)：

```
$form->hasMany('items', '商品项目', function (Form\NestedForm $form) {
    $form->table('menu', '子菜单', function ($table) {
        $table->text('name', '名称');
        $table->textarea('desc', '描述');
    });
});
```

删除接口
----

[](#删除接口)

扩展会自动注册后台路由：

```
POST /admin/hasmany-extra/delete

```

用于处理 `hasMany` 子项里的单张旧图删除。

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance82

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity30

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

91d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/19651025?v=4)[东方不拔](/maintainers/song0223)[@song0223](https://github.com/song0223)

---

Top Contributors

[![song0223](https://avatars.githubusercontent.com/u/19651025?v=4)](https://github.com/song0223 "song0223 (6 commits)")

---

Tags

extensionlaravel-adminnested-formhasmanymultiple-image

### Embed Badge

![Health badge](/badges/bacao-laravel-admin-hasmany-extra/health.svg)

```
[![Health](https://phpackages.com/badges/bacao-laravel-admin-hasmany-extra/health.svg)](https://phpackages.com/packages/bacao-laravel-admin-hasmany-extra)
```

###  Alternatives

[laravel-admin-ext/lock-screen

Lock-screen page for laravel-admin

2317.2k](/packages/laravel-admin-ext-lock-screen)[jadekun/sku

382.2k](/packages/jadekun-sku)[jonexyz/wang-editor-v4

laravel admin editor

161.4k](/packages/jonexyz-wang-editor-v4)[namet/laravel-admin-tagsinput

tagsinput for laravel-admin Form

102.7k](/packages/namet-laravel-admin-tagsinput)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
