İlginç bir sorun. Çünkü dil odaklı olsa da, aslında I18N ilgili değil - yerelleştirilmiş içerik görüntüleme, yaklaşık bir dil tercihine göre içeriğe erişimi inkar bahsediyoruz.
İşte bir fikir: Bir izin modelini kullanmak
- Örneğin "-enUS-içeriğini okumak" ve "okuma-enGB-içerik" olarak iki izinleri oluşturmak
- Kullanıcının seçimine dayanarak, (çerez veya kullanıcı prefs yoluyla isterseniz devam edebilirsiniz olan) kendi oturum uzunluğu için onlara doğru izni
- Daha sonra onların izinlerine dayanarak içeriğini inkar / izin uygulamanın sorumluluğu olacaktır.
Ardından soru nasıl izinleri içerik bağlanmak mı, olur? Orada yollar çok sayıda olan, ancak bir yaklaşım bir bit maskesi sütundur.
00
||
|+--- Read enUS bit
+---- Read enGB bit
Uygulanan Hangi bu gibi görünebilir
Articles
+----+---------+-----------------+
| id | content | read_perm_level |
+----+---------+-----------------+
| 1 | foo | 1 |
| 2 | bar | 2 |
| 3 | baz | 3 |
+----+---------+-----------------+
Bu 'foo' enUS sadece okunabilir olduğu anlamına gelir, 'bar' enGB sadece okunabilir, ve 'baz' herkes tarafından okunabilir.
Ama aynı zamanda tam bir izninin tablo yapmak ve bu şekilde ona içeriği bağlayabilirsiniz.