私は、という単一の定義に基づいて、Webコンテキストで完全なCreate Read Update Delete(CRUD)を完全に生成できるはずです。それは、次のとおりです。clojure/clojurescript形式の汎用CRUDには何かありますか
- クライアント:多分インライン編集と操作のためのインタラクティブなHTMLデータ・テーブル・コンポーネントなど
- クライアント:スキーマから推定される検証を、単一のレコードを編集するなどのためのフォームコンポーネント
- サーバ:前記コンポーネント(RESTエンドポイント)を投入し更新するためのデータにアクセスするためのルート
- サーバー:SQLテーブルなどのデータを永続化するための実装。
理想的には、私は名前と姓とアドレスフィールドを持つPersonデータ型のスキーマを定義してから(defcrud Person my-person-schema)
のようなマクロや関数を呼び出すと動作しますが、Webページに移動したり、データテーブルを参照したり、データを編集/削除したりできます、データをサーバーにすべて保存します。
私の質問は、上記のように何か(または部分的に)何かがクロージャーの世界にありますか?
私の最近の最初の完全なclj/cljsプロジェクトでは、この基本的なもののために多くのコードを書いていました。昔、SmartGWTと呼ばれるGWTフレームワークを使用したとき、new ListGrid(myDataSource)
を定義し、データソース(スキーマと同等)を定義し、残りは推測されました(少なくとも適切なデフォルトを持つもの)。
高度な開発のSmartGWTは、私が非常に頻繁に構築する必要がある種類のビジネスアプリケーションに対して真のラピッドプロトタイピングを可能にするものです。 GWTには大きなアプリケーションのコンパイル時間が非常に遅く、Javaを書く必要があるという難点がありますが、Clojureで探しているサーバとクライアントの統合のレベルです。