PHP ve MySQL'de bir menü sistemi oluşturuyorum. Birkaç farklı menüye sahip olacağım ve her menünün kendisine bağlı bir dizi menü öğesi olacak.
Sitede ayrıca farklı kullanıcı izinlerim var, bazı kullanıcılar tüm menü öğelerini görebilir ve bazı öğeler bazı kullanıcılardan gizlenir. Gelecekte daha fazla kullanıcının kolayca eklenmesini sağlayacak izinleri temiz bir şekilde nasıl ele alabileceğimi merak ediyorum.
Şimdiye kadar sahip olduğum şey şudur:
-------------------
|Menus
-------------------
|id| |display name|
-------------------
----------------------------------------------------------
|Menu items
----------------------------------------------------------
|id| |menu_id| |label| |link| |parent| |sort| |permission|
----------------------------------------------------------
permission
Sütun, geçerli kullanıcının izin kimliği ile eşleşebilecek virgülle ayrılmış bir dize olabileceğini düşünüyorum . Ayrıca, varolan izinlerin olası tüm birleşimlerini tanımlayan başka bir tabloya da başvuru olabilir.
Bir çözüm aynı zamanda birden fazla menü öğesini saklamak olabilir, ancak tek fark izintir, ancak bu yinelenen depolamaya ve belki de yönetmek için bir acıya yol açacaktır.
Bunu nasıl yapılandıracağımız ve neyin temiz, dinamik ve berbat olduğu düşünülebilir.
Teşekkürler.