パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v1.0.4

flutter_laravel_form_validation

Dart拡張に基づく簡略化されたFlutterフォーム検証。Laravelの検証にインスパイアされています。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
224
いいね数
24
Pub ポイント
160

パッケージをインストール

flutter pub add flutter_laravel_form_validation

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

Laravelの検証ルールにインスパイアされた構文を使用して、フォーム検証を簡素化するFlutterパッケージです。Dartで検証制約を明確かつ表現的に直接定義できるため、複数のプラットフォーム間でユーザー入力を検証しやすくなります。拡張機能はFlutterウィジェットとシームレスに統合され、カスタムエラーメッセージ、ルールチェーン、リアルタイムフィードバックをサポートしています。Laravelの検証システムに精通している開発者や、フォーム検証に対してより直感的なアプローチを求めている開発者に最適です。

用途

  • ユーザー登録フォームの検証
  • リアルタイム入力検証の実装
  • 再利用可能な検証ルールの作成
  • 複雑なフォームロジックの処理
  • エラーメッセージの簡素化
  • 既存のFlutterフォームとの統合

主な機能

  • Laravel風の検証構文
  • チェーン可能な検証ルール
  • カスタマイズ可能なエラーメッセージ
  • 複数プラットフォームのサポート
  • Flutter ウィジェットとの簡単な統合
  • リアルタイム検証フィードバック

適している対象

  • Laravelに精通したFlutter開発者
  • 一貫した検証パターンを求めるチーム
  • 堅牢なフォーム検証を必要とするプロジェクト
  • 簡潔な検証コードを望む開発者
  • 複雑なフォーム要件を持つアプリ

注意事項

  • Laravelのバリデーションの概念を理解している必要がある
  • 基本的な例以外のドキュメントは限られている
  • 高度な使用例では、追加のセットアップが必要になる場合があります
  • フォーム検証以外のシナリオには適していません
  • 状態管理ソリューションと併用するのが最適です

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

Flutter Laravel Form Validation

A simplified dart extension based flutter form validation . Inspired by Laravel Validation.

🎖 Installing

dependencies:
  flutter_laravel_form_validation : ^1.0.4
⚡️ Import
import 'package:flutter_laravel_form_validation/flutter_laravel_form_validation.dart';

🎮 How To Use

Validation rules in a list, short form without label or custom messages

    TextFormField(
        validator : ['required','max:10','uppercase'].v,
    ),

Validation rules in a list using the FLValidator class, short form without label or custom messages

    TextFormField(
        validator : [FLValidator.required,FLValidator.max(10),FLValidator.uppercase].v,
    ),

Custom validation in a list

    TextFormField(
        validator : [FLValidator.required,customValidation].v,
    ),

    String? customValidation(String? value) {
    if (value == "flutterdev") {
        return "Value cannot be flutterdev";
    }
    return null;
    }

Validation rules in a string, short form without label or custom messages

    TextFormField(
        validator : "required|max:10|uppercase".v,
    ),

Validation rules in a list with label or custom messages

 TextFormField(
        validator : ['required','max:10','uppercase',].validate(attribute: 'Username',
        customMessages: {
            'required': "You must input your username",
            'max': "The length must be 10",
             'uppercase': "Only uppercase is allowed"
            },
    ),

Validation rules in a list with label or custom messages

 TextFormField(
        validator : "required|max:10|uppercase".validate(attribute: 'Username',
        customMessages: {
            'required': "You must input your username",
            'max': "The length must be 10",
             'uppercase': "Only uppercase is allowed"
            },
    ),

Rules

Class property String Description Example
FLValidator.required required For making sure a form field value is required ['required'] or 'required' or [FLValidator.required]
FLValidator.numeric numeric For making sure a form field value is numeric ['numeric'] or 'numeric' or [FLValidator.numeric]
FLValidator.integer interger For making sure a form field value is an interger ['interger'] or 'interger' or [FLValidator.interger]
FLValidator.double double For making sure a form field value is a double ['double'] or 'double' or [FLValidator.double]
FLValidator.between(min,max) between(min,max) For making sure a form field value is between the of min and max ['between:2,8'] or 'between(2,8)' or [FLValidator.between(2,8)]
FLValidator.max(length) max:length For making sure a form field value length is limited to the max length ['max:5'] or 'max:5' or [FLValidator.max(5)
FLValidator.min(length) min:length For making sure a form field value length is limited to the min length ['min:5'] or 'min:5' or [FLValidator.min(5)]
FLValidator.gt(number) gt:number For making sure a form field value is greater than the number specified ['gt:10'] or 'gt:10' or [FLValidator.gt(10)]
FLValidator.lt(number) lt:number For making sure a form field value is less than the number specified ['lt:10'] or 'lt:10' or [FLValidator.lt(10)]
FLValidator.gte(number) gte:number For making sure a form field value is greater than or equal to the number specified ['gte:10'] or 'gte:10' or [FLValidator.gte(10)]
FLValidator.lte(number) lte:number For making sure a form field value is less than or equal to the number specified ['lte:10'] or 'lte:10' or [FLValidator.lte(10)]
FLValidator.uppercase uppercase For making sure a form field value is uppercase ['uppercase'] or 'uppercase' or [FLValidator.uppercase]
FLValidator.lowercase lowercase For making sure a form field value is lowercase ['lowercase'] or 'lowercase' or [FLValidator.lowercase]
FLValidator.startsWith(value) starts_with:value For making sure a form field value starts with the specified value ['starts_with:man'] or 'starts_with:man' or [FLValidator.startsWith(man)]
FLValidator.endsWith(value) ends_with:value For making sure a form field value ends with the specified value ['ends_with:man'] or 'ends_with:man' or [FLValidator.endsWith(man)]
FLValidator.same(other) same:other For making sure a form field value is same as other ['same:other'] or 'same:other' or [FLValidator.same(other)]
FLValidator.alphaNum alpha_num For making sure a form field value is alpha numeric ['alpha_num'] or 'alpha_num' or [FLValidator.alphaNum]
FLValidator.inItems(List items) in: For making sure a form field value exist in a list ['in:he,she,it'] or 'in:he,she,it' or [FLValidator.inItems([he,she,it])]
FLValidator.notInItems(List items) not_in: For making sure a form field value does exist in a list ['not_in:he,she,it'] or 'not_in:he,she,it' or [FLValidator.notInItems([he,she,it])]
FLValidator.regEx(pattern) regex:pattern For making sure a form field value match the specified regular expression pattern ['regex:pattern'] or 'regex:pattern' or [FLValidator.regEx(pattern)]
FLValidator.email email For making sure a form field value is an email ['email'] or 'email' or [FLValidator.email]
FLValidator.ip ip For making sure a form field value is an ip address ['ip'].v or 'ip'.v or [FLValidator.ip].v
FLValidator.url url For making sure a form field value is a url ['url'].v or 'url'.v or [FLValidator.url].v

Also, localization is a work in progress

🐛 Bugs/Requests

If you encounter any problems feel free to open an issue. If you feel the library is missing a feature, please raise a ticket on Github and I'll look into it. Pull request are also welcome.

カテゴリー

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。