Ben ölçüm verilerinin bir çok mağaza bir web uygulaması üzerinde çalışıyorum.
Bu önlemler sıcaklık, akış, ağırlık, konsantrasyon gibi farklı türleri vardır ...
Ben şu anda measurement units manager uygulamanın kullanıcıların her bir tedbir için istediğiniz birim seçmesine izin uygulamak çalışıyorum.
Veri birden fazla tablo şöyledir:
Tablo1: weightMeasure1 lengthMeasure1 TemperatureMeasure1
Tablo2: weightMeasure2 lengthMeasure2 FlowMeasure2
Tablo3: flowMeasure3
Kullanıcıların bağımsız her bir tedbir için istediğiniz birimi seçmek mümkün olacak. Yani bir metric/imperial seçim olmayacaktır.
Tüm veriler veritabanında orada SI or SI derived ünitesine kaydedilir. Benim uygulama için PHP kullanıyorum çünkü ben kullanmaya karar verdim Zend_Measure to handle the conversion (after asking this question).
How to define the unit of each measures in my database?
How to manage the user unit preferences?
This is the best solution that I have so far :
Ben bir property tablo yaratacaktır:
özellik: property_id adı sütunu birimi
- property_id benzersiz bir artırılır sayıdır (PK)
- name Bir insan okunabilir isim (isteğe bağlı)
- column tablo adı bir birleştirme ve sütun adı (Benzersiz sınırlama) olduğunu. Örneğin,:
table2_lengthMeasure2
- unit veritabanında mülkiyet birimini tanımlayan Zend sabit bir dizedir. Örneğin:
SQUARE_METER
,KILOGRAM_PER_HOUR
, ... Zend Framework API mevcuttur daha fazla ayrıntı.
Ben kullanıcı tercihlerini yönetmek için user_property_unit tablo yaratacaktır:
user_property_unit: User_id property_id ünitesi
- unit o kullanıcı için UI ekran olacak zaman mülkiyet birimini tanımlayan Zend sabit bir dizedir. Örneğin, bu olabilir
SQUARE_METER
property
masa veSQUARE_FOOT
user_property_unit
birim sütununda birim sütununda
Ben bu çözüm ile görmek sorunlar şunlardır:
- Bir concat kullanarak
table name + column name
bana doğru değil gibi görünüyor ... - Benim sütunlardan birinin adını değiştirirseniz o
property
tabloya yansımaz.
Lütfen Yardım için teşekkürler!
UPDATE Is there any one why can help me even with some tips?