私はServer Side JavaScriptを使用しています - はい、実際にはServer Side JavaScriptを使用しています。さらに複雑なものを作成するために、Oracleをバックエンド・データベース(10g)として使用します。いくつかの狂ったXSLTと突然変異体のようなHTML生成で、私は本当に派手なWebフォームを構築することができます - はい、私はRailsや他の同様のフレームワークを認識しており、代わりに恐怖の道を選びます。私は、JQueryやその他の素晴らしいフレームワークを私の処分で持っていません。Mozilla Rhinoという基盤エンジンでサポートされるはずのJavaScriptです。はい、それは非常識で、私はそれを愛しています。SQLとJavaScriptを使用するユーザー設定
私は自由にテーブルを用意していますが、その中には値にリンクする連想キーがあります。私が人々を喜ばせるように、私はいくつか気の利いたユーザー優先設定のソリューションを追加したいと考えています。
ユーザーはすべて一意のuser_idを持ち、このuser_idはセッション全体で使用できます。
私の最初のアイデアは、user_id、feature、およびpref_stringの3つの列を持つユーザー設定テーブルを用意することです。 :や - (まだ適切なものは考えていない)のようなデリミタを使うと、リストとして好みの束を保存し、その要素を.split-methodを使って配列の中に格納することができます。 -explode関数)。フィーチャーの列は、テーブル名やフィーチャーの識別子のようなものでも構いません。オブジェクトをハードコーディングするのは嫌いです。特にこれらをバックアップして、この機能をアプリケーション全体で再利用できるようにしたいと思っています。もちろん、私はより良いアイデアが大好きです。ただライブラリを簡単に追加することはできません。
これらの設定はテーブルに「結合」されている可能性があるため、クエリを実行してその値を使用できます。
私はそれがあまりにも複雑に聞こえないことを願っています。なぜなら、その基本的には本当に簡単なものです。
ありがとうございます!
EDIT
は、私は現在、10の動的な値を持つドロップダウンボックスを、記入したいとしましょう。 私は、単純なselect文を使用して、データベースからこれらを得るでしょう:
SELECT pet, value FROM pets
それは以下のようなテーブルを返します:
dog 1
cat 2
fish 3
私はドロップダウンボックスの内側にこれを入力します。ただし、user_id 100のように哺乳類(犬、猫)のみが表示され、user_id 200には海の生き物(魚)のみが表示されるように、そのテーブルに設定を追加することができます。テーブルが世界のすべての生き物を持っていると想像してみてください。私はそのような好みを必要とするたくさんのテーブルを持っています。
私は無制限のユーザーを持つことができるため、何らかの形のメタデータを適用する必要があります。これを行うソリューションは、私が探しているものです。
あなたの設定テーブルには、「プリファレンスタイプ」の列もあるはずです。いくつかのプリファレンスはシンプルブーリアンであり、他のものは日付、整数、または文字列です。また、好みのUIをいくらか自動化できるように、他のインジケータを含めることもできます。新しいUIごとに独自のUIコーディングを必要とするメンテナンスの問題があります。 – Pointy
ああ、あなたがここで求めていることはまったく明らかではありません。現在のソリューションに何か問題がありますか? – Pointy
私は好みが軽く取られるべきではないことを知っています。しかし、私はむしろ、少なくとも「嗜好」を持つことができるモデルに着手しています。初期値または目に見えるアイテムのようなものです。後者はブール型を使用することができます。 – Shyam