3

製品データベースを開発しています。サイズについては、別のテーブル PRODUCT_SIZE(id,sizetext) を作成しました

例: (1,'Small') ,(2,'Large'), (3,'Extra Large'),...

これらのサイズのリストをチェックボックスとして提供しました。製品が追加されると、現在の製品に対して可能なすべてのサイズを選択できます。

たとえば、T シャツ、SMALL、LARGE サイズを選択した場合。

これらの 2 サイズは、新しく購入した各エントリに対して利用できます。今、私は、さまざまなサイズの単位が存在する可能性があることを知りました。一部のアイテムはインチ、一部はkg、一部はメートルです。

私は変更された解決策を念頭に置いています: テーブルを変更する

PRODUCT_SIZE(id,sizetext, UNitType);

(1,'5','KG') ,(2,'10','KG'), (3,'2.5'.'インチ'),...

より良いアプローチ、提案はありますか?

4

3 に答える 3

4

「衣服のサイズ」、「重量」、「長さ」を 1 つの「サイズ」属性に強制しているようです。

これらのテーブルを試してください:

  product (product_id, name)
    "Nike t-shirt"

  attribute_group (attribute_group_id, name)
    "Shirt size", "Weight", "Length", etc.

  attribute_value (attribute_value_id, attribute_group_id, name)
    "Shirt size" would have rows for "Small", "Large", etc.

  product_attribute (product_id, attribute_value)
     "Nike t-shirt" is "Large"

attribute_value にも「表示順序」を追加します (「小」が「大」の前に表示されるようにします)。

他の属性についてもこれを行います。

私は本番サイトでこれを行いましたが、うまくいったと思います。

幸運を。

于 2012-10-03T16:55:29.930 に答える
0

このために別のテーブルを作成する代わりに、すべてのドロップダウン オプションをアプリケーション スコープの変数に入れてみませんか? 次に、そのデータを製品のフィールドに文字列として追加するだけで、さまざまなオプション/ユニットをプログラムで処理できます。

于 2012-10-03T13:58:45.720 に答える
0

サイズがいくつかのタイプの服を格納するデータベースを作成しました.1つの記事にはxs smlのようなサイズがあり、他のものは26 27 28 29 30などです。私はこれを行うことにしました:

# on one side in the script i define size types and names;
$sizeTypes[1] = [XS, S, M, L];
$sizeTypes[2] = [29, 30, 31, 32];
#The and so on
#and on the other side in the database, there are just two columns

size_type_id(int) | size_qty |

# so if I have one article with 3 pieces of size S 2 pieces of size M and 5 pieces of size L the database will store:
size_type_id|  size_qty     |
1           |0:0;1:3;2:2;3:5|

次に、スクリプトで、タイプ 1 の 0 が XS、タイプ 1 の 1 が S、タイプ 2 の 2 が 31 などになるように変換します。

于 2013-10-01T11:28:59.370 に答える