定制 steelants/livewire-form 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

steelants/livewire-form

最新稳定版本:0.1.6

Composer 安装命令:

composer require steelants/livewire-form

包简介

Simple Form class based on Laravel & Livewire

README 文档

README

Basic Form Component For Creation/Update of model

<?php
namespace App\Livewire\PersonChild;

use App\Models\PersonChild;
use SteelAnts\LivewireForm\Livewire\FormComponent;
use SteelAnts\LivewireForm\Traits\HasModel;

class Form extends FormComponent
{
    use HasModel;

    public $modelClass = PersonChild::class;

    //default rules generated from $fillables of model or define own if you are not using them HasModel Attribute
    protected function rules()
    {
        return [
            'properties.name' => 'required',
        ];
    }

    //Oweride default labels generated from $fillables of model or define own if you are not using them HasModel Attribute
    function labels(){
        return [
            'name' => __('Jméno')
        ];
    }

    function onSuccess(){
        //DO SOMETHING ON SUCESS;
    }

    function onError(){
        //DO SOMETHING ON ERROR;
    }
}
@livewire('form-test', ['model' => 2])

User For Form Component example

Edit user - pass model-id attribute
<livewire:user.form model-id="2" />

Create user
<livewire:user.form/>
<?php
namespace App\Livewire\User;

use App\Models\User;
use SteelAnts\LivewireForm\Livewire\FormComponent;
use SteelAnts\LivewireForm\Traits\HasModel;

class Form extends FormComponent
{
    use HasModel;

    public $modelClass = User::class;

    protected function rules()
    {
        return [
            'properties.name' => 'required|max:255|unique:users,name',
            'properties.email' => 'required|string|email|max:255|unique:users,email' . ($this->model->exists() ? ',' . $this->model->id : ''),
            'properties.password' => 'sometimes|string|min:8|max:255',
            'properties.password_confirmation' => 'required_with:properties.password|string|same:properties.password',
        ];
    }

    //Oweride default labels generated from $fillables of model or define own if you are not using them HasModel Attribute
    function labels(){
        return [
            'name' => __('Name'),
            'email' => __('Email'),
            'password' => __('Password'),
            'password_confirmation' => __('Password confirmation')
        ];
    }

    function onSuccess(){
        //DO SOMETHING ON SUCESS;
    }

    function onError(){
        //DO SOMETHING ON ERROR;
    }
}

Dev Enviroment

  1. Clone Repo to [LARVEL-ROOT]packages/
  2. Modify ;composer.json`
    "autoload": {
        "psr-4": {
            ...
            "SteelAnts\\LivewireForm\\": "packages/livewire-form/src/"
            ...
        }
    },
  1. Add (code below) to: [LARVEL-ROOT]packages/bootstrap/providers.php
SteelAnts\LivewireForm\LivewireFormServiceProvider::class,

Contributors

Other Packages

steelants/datatable

steelants/form

steelants/modal

steelants/boilerplate

统计信息

  • 总下载量: 2.12k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-08-20

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固