Yiiでの自動コード生成

Hi%username%! 数年前、私は素晴らしいYiiフレームワークに出会いました。そして、私はそれでプロジェクトを実行する機会があるので、私はそれのために戦います。



私が本当に気に入っているクールな機能の1つは、Giiツールです。これは、バージョン1.1.2からフレームワークの一部でした。 次に、それに基づいたサードパーティモジュールについてお話します。



Gii "Out of the Box"は、かなり機能的なコードを生成します。多くの場合、小さな機能を作成する必要がある場合、ほとんど変更する必要はありません。 しかし、さらに機能が必要な場合はどうでしょうか? たとえば、複数の言語のサポートを追加したり、生成されたコードのスタイルを変更したりしますか?

展開するには2つの方法があります。既存のテンプレートを変更し、独自のジェネレーターを作成します(それぞれ、または既製のものを使用します)。 これらの機能に基づいて、自動コード生成で快適に作業するための興味深い十分な製品が作成されました。



ギックス



拡張ページ

おそらく私のお気に入りのジェネレーター。 モデルのモデルと、ベースから継承するモデルの個別に空のクラスを含むベースクラスを生成します。 したがって、ベースを変更すると、コードを上書きせずに再生成できます。



また、関係に基づいてビューを生成します。これにより、非常に多くの時間を節約できます。



主な機能






実践により、このジェネレーターは、正しく設計されたデータベースを使用して、多くの必要なコードを生成することが示されています。



しょーた



拡張ページ

かなりクールなもの。 MANY_MANYバンドルを含むモデルのフロントエンドでajaxを使用してコードを生成するためのテンプレートを提供します。 「製品」や「カテゴリ」などのエンティティを作成する必要がある場合に便利です。



たとえば、製品には通常のCListViewまたはCGridViewを使用し、カテゴリにはjstreeプラグインを使用して編集されたnestedsetを使用できます。



このすべてがモーダルダイアログで編集され、ファイルを添付できます。

Giixに基づいています。



おわりに



生成用のモデルとテンプレートのセットははるかに多く、使用する必要があり、本当に好きなものだけを説明しました。

Giixのフォークのアイデアは私を去りません。たとえば、この拡張機能には本当に良いアイデアがあります。たとえば、生成前に設定フィールドタイプを追加し、ルール、フィルターを設定します。 時間はわかります。



これは私の最初の記事です。それまでは、トロールのしか方法を知りませんでした。 他のユーザーをし、and辱するために、私は以前に謝罪します。 PMで記事を書くためのヒントと批判を書いてください。同じ間違いがあります(私のロシア人は悪いです、私はそれに取り組んでいます)。



参照:

manymanyajaxcrudadmin

ギックス

Yiiでの自動コード生成



All Articles