Laravelプロジェクトで管理パネルを作成するためのパッケージ

あなたの意見では、PHPでサイトを作成する上で最も恐ろしく退屈なステップは何ですか? 私の意見では-これは管理パネルの作成です。 これらすべての統一されたフォーム、テーブル、多数のほぼ同一のファイルは、作成するだけでなく、後で維持する必要があります。 したがって、使用するフレームワークごとに、遅かれ早かれこのプロセスを容易にするクラスのセットを作成しました。



それで、Laravelに着きました。 管理パネルをすばやく作成し、フロントエンドにより多くの時間を費やすのに役立つパッケージを紹介します。



あなたは、私の「自転車」で、私がすべてを見るためにそれを公開した理由を尋ねますか? 私にとって、これらは彼のいくつかの強みです。



ゼロ 、それは実際のプロジェクトで私を助けます。 おそらくそれは他の誰かを助けるでしょう、そしてこれはすでにすべてが無駄にされていないことを意味します。



まず 、構成ファイル。



私は設定にうんざりしています。これは魔法のように作成された配列で、特定の名前のキーとこれらのキーのテキスト値があります。 IDEからは、構成からの特定のキーが具体的に処理され、それが何をするのが簡単なタスクであるかをプロジェクトコード内で見つけるための、自動的な置換または誤って指定された値の強調表示はありません。 さらに、ここのパッケージコードは弱いヘルパーであり、ドキュメントはあなたの唯一の友達です。



したがって、配列形式の設定(php配列、yamlファイル、それは問題ではありません)を拒否し、phpコードの形式で設定を行いました。 以下は、管理パネルで使用するデモアプリケーションのカントリーモデルの説明の簡単な例です。



Admin::model('\Country')->title('Countries')->with('contacts')->columns(function () { Column::string('title', 'Title'); Column::count('contacts', 'Contacts')->append(Column::filter('country_id')->model('\Contact')); })->form(function () { FormItem::text('title', 'Title'); });
      
      







あなたのことは知りませんが、実際にはすべての同じ情報が含まれていますが、キーのある配列よりも読む方がはるかに便利なようです。



このアプローチのいくつかの利点:





第二に 、拡張性。



後でモデルで使用される独自の列タイプとフォーム要素を登録できます。 したがって、作成した機能だけに限定されません。



特定のメニュー項目を処理するために独自のコントローラーを登録することもできます-ここでは、すでに無制限です。



第三に 、管理パネルを作成するために必要な作業量。



メニューを作成し、管理パネルを作成する必要がある各モデルの説明を作成する必要があります。 そしてそれだけです。



このパッケージは、多くの相互接続が弱いモデルを持つ主に小さなプロジェクトで使用するために作成しました。 原則として、彼らの主な目標は、デザインに従ってフロントエンドでデータを表示することであり、顧客のためにどのような管理パネルが存在するかは、それが主な目標-サイトのコンテンツの管理-を満たすだけであれば、それほど重要ではありません。



GitHubソース | プロジェクトのドキュメント | デモアプリケーション



All Articles