学校向けに、webnoir フレームワークを使用して Clojure でルーレット Web アプリケーションを作成しています。すべてが Clojure で実現できるように見えますが、問題は、Clojure のドメインでボードをどのように定義するかということです。コーナー ベットなどを配置できる必要があります。
ドメインでこれをモデル化した場合、ビューの情報をドメイン/ボードに送信するにはどうすればよいでしょうか?
アイデアや提案はありますか?
ボードを定義する方法は無限にあり、その多くは優れているので、その質問を避け、主に2番目のボードビューとモデル間の通信について説明します。
webnoirを使用する1つの解決策は、アクションを実行するためのフォームをボードビューに含めることです。そのフォームを送信すると、ボードモデルが更新され、同じルートにリダイレクトされ、ビューが更新されます。ChrisGrangerの優れたドキュメントを読んでいると思います。
別のルートは、プロジェクトの範囲外である可能性がありますが、クライアント側のコードがモデルと動的に通信してビューを更新することであり、最終的には単一ページのWebアプリになります。これは、 ClojureScriptを使用して実行できます。これを検討している場合は、以前はpinotとして知られていたChrisGrangerのライブラリをご覧ください。それらはwebnoirに素晴らしい補完を提供します。