xiaohuilam / laravel-admin-select2

𝒂𝒔𝒚𝒏𝒄 𝒔𝒆𝒍𝒆𝒄𝒕/𝒎𝒐𝒓𝒑𝒉𝑺𝒆𝒍𝒆𝒄𝒕 𝒇𝒐𝒓 𝒍𝒂𝒓𝒂𝒗𝒆𝒍 𝒂𝒅𝒎𝒊𝒏
MIT License
41 stars 4 forks source link

Method Encore\Admin\Form\Field\Select::match does not exist. #33

Closed unizhu closed 5 years ago

unizhu commented 5 years ago

Laravel: 5.8.15 Laravel-admin: 1.6.13

没有自动加载方法吗?

xiaohuilam commented 5 years ago

composer.jsonLaravelAdminExt\Select2\Select2ServiceProvider 自动发现机制.

https://github.com/xiaohuilam/laravel-admin-select2/blob/8be29b1d62bd003679a3f0ad2175d11181496c1e/composer.json#L33-L39

会将 laravel-admin 自带的 Encore\Admin\Form\Field\Select 覆盖成 LaravelAdminExt\Select2\Form\Field\Select https://github.com/xiaohuilam/laravel-admin-select2/blob/8be29b1d62bd003679a3f0ad2175d11181496c1e/src/Select2ServiceProvider.php#L28-L31

根据你提交的信息貌似没有走到这个 ServiceProvider. 你是不是忘记了 composer require 这个包, 或者在本地 require 但在线上机器没有 install?

unizhu commented 5 years ago

@xiaohuilam 直接运行 composer require xiaohuilam/laravel-admin-select2 后,在laravel admin的select方法下实验的。 composer 里面是包含的。

然后继续测试,在provides里加入 "extra": { "laravel": { "providers": [ "LaravelAdminExt\\Select2\\Select2ServiceProvider" ] } }, 也是method not found

xiaohuilam commented 5 years ago

手工在你 config/app.phpproviders 加入的吗?

"providers" => [
    //...
    \LaravelAdminExt\Select2\Select2ServiceProvider::class,
],
unizhu commented 5 years ago

在 app.php 里也加过里, 还是一样报错。是不是要publish一下,或者在admin.php里 enable一下?

xiaohuilam commented 5 years ago

在 app.php 里也加过里, 还是一样报错。是不是要publish一下,或者在admin.php里 enable一下?

不需要. 你看一下 tests/ 下的用例和配置

unizhu commented 5 years ago

代码类似这样的,配置也没什么特殊呀

 $form->select('user_id', '用户')->match(function ($keyword) {
                return AdminUser::selectRaw('id, name as text')
                    ->where('name', 'LIKE', '%' . $keyword . '%')
                    ->latest();
})->text(function ($id) {
                return AdminUser::whereIn('id', [$id])->pluck('name', 'id');
});
xiaohuilam commented 5 years ago

你在 vendor/xiaohuilam/laravel-admin-select2/src/Select2ServiceProvider.php 的 27 行下面 加个

dd('test');

看能不能被触发?

unizhu commented 5 years ago

dd 可以出来的。

xiaohuilam commented 5 years ago

dd 可以出来的。

我在你所描述的版本下已复现此问题.

xiaohuilam commented 5 years ago

问题已修复. 请更新插件版本至 v1.1.6

unizhu commented 5 years ago

感谢