2011-07-18 14 views
0

私が今作業しているWebフォームは、契約の電子版です。ユーザーは、一貫性のある表現を維持するために、多数のフィールドのデフォルト値を使用したいと考えています。ただし、カスタム値を入力したり、一部のフィールドに複数の値を選択したりすることもできます。私は、プレゼンテーション層がバックエンドに大量に流出していることを知っています。誰かがこのようなアプリケーションを設計するためのヒントを持っているかどうか疑問に思っていますか?デフォルト値とカスタム値を使用したWebフォームの設計

EDIT:ビジネスロジックが大量にあるため、詳細には入りたくないと思っていました。しかし、基本的に私はそれに約20フィールドのフォームを持っています。 3つのフィールドには複数のオプションがある選択ボックスがあります。これらは私が話していたdefaultの値です。しかし、ユーザは選択肢に「ワン・オフ」タイプの値を追加することもできるようにしたい。これは契約の中で、デフォルトとして価値あるものとして使用されていない特定の用語を表しています。私の問題は、ユーザーが自由にこれらのデフォルトを追加したり削除したりできるようにするために、データベースにデフォルト値を保存していることです。標準のデータキャプチャ画面だけではありません。

+2

「プレゼンテーションレイヤーがバックエンドで非常に重く出血しています」という例がありますか? –

+0

あなたが現在どのように設計されているかについての情報がなければ、解決策を提案することは不可能になります。ここには多くの変数があります。 – NotMe

+0

はい、私は、たくさんの変数があることを知っています。私の質問は、 "default"値と "entered"値があるアプリケーションのデータを格納する方法です。どちらがデータの表示に混ざっているかを判断するロジック。私はコードを投稿することができればいいと思います。でも、私は出来ません。 –

答えて

0

私が正しくあなたを理解していれば、あなたやあなたのドメインを知らなくても、あなたは両方のデフォルト選ばれた値を格納するとの問題を抱えている、あなたは一種のデータベースに冗長データを取得します。
多くのものが単なるユーザのものであるときに、freetextで選択した項目にデフォルトのフラグを格納することは賢明です。並べ替え

私の考え/推奨事項は以下のとおりです。

デフォルト値は、あらゆるビジネスの価値は非常にユーザーの選択肢としてそれを保存していない持っていません。ユーザーが選択したもの/ freetextだけを保存します。

これは、ユーザーがデフォルトを選択したことを意味しますか?それからビジネス上の価値があり、ユーザーが選択した値/テキストと、それがデフォルト値になったティックを保存する必要があります。

または私は完全にあなたを誤解しているかもしれません...

+0

私はあなたが正しい道にいると思う。デフォルト値を選択するときは問題ありません。私の問題はデータベースにあります。実際のテキストの代わりにそのデフォルト値のIDを保存していますが、自分のテキストを入力するとIDはありません。だから私は、バックエンドの2つの別々のフィールドに同じフィールドのデータを格納することになります。 –

+0

冗長な値を格納するのはうまくいくが、プラグマチックなものでなければならないので、あまり心配しないでください。既定値のIDの格納をスキップします。既定値であったブール値です。デフォルト値が変更され、それにビジネス上の価値がある場合を除きます。そして、あなたはすでに「正しい」解決策を持っています。テキスト表示と、ユーザーがデフォルトを選択した場合のデフォルト値が必要な場合のIDが必要な場合は、テキストフィールドを読んでください。 – LosManos

1
  • tblRecord(レコードID、SomeFieldID、CustomText)
  • tlkpSomeField(SomeFieldID、SomeFieldText)

それは吸うが、それは実際にありますかなり一般的な解決策です。レコードにSomeFieldIDがnullであることが示されている場合にのみ、CustomTextを使用できます。あなたのデータレイヤーはそのすべてを抽象化するので、きれいになります。デフォルト値をtlkpテーブルの最初の値として保存することもできます。

tlkpSomeField 
1 Default Value 
2 value1 
3 value2 
4 .... 
関連する問題