Birden çok dile sahip siteler için en iyi veritabanı yapısı?

Bu soru iptal edilmiştir...
Merhaba bir süredir birden fazla dile sahip siteler için uygun bir veritabanı üzerinde araştırma yapıyorum.Klasik yöntemler dışında şuan kullandığım yöntem aşağıda(Halen eksikleir var).Diğer klasik yöntemler hakkında da bilgim var.Ürünler,sayfalar vb uygulamalar için sizce en iyi veritabanı yapısı nasıldır ?
--
-- Tablo için tablo yapısı `page_categories`
--

CREATE TABLE IF NOT EXISTS `page_categories` (
  `category_id` int(11) NOT NULL AUTO_INCREMENT,
  `category_parent_id` int(11) NOT NULL,
  `category_active` enum('true','false') NOT NULL DEFAULT 'false',
  PRIMARY KEY (`category_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

--
-- Tablo döküm verisi `page_categories`
--

INSERT INTO `page_categories` (`category_id`, `category_parent_id`, `category_active`) VALUES
(1, 0, 'true');

-- --------------------------------------------------------

--
-- Tablo için tablo yapısı `page_container`
--

CREATE TABLE IF NOT EXISTS `page_container` (
  `article_id` int(11) NOT NULL AUTO_INCREMENT,
  `category_id` int(11) NOT NULL,
  `article_active` enum('true','false') NOT NULL DEFAULT 'false',
  PRIMARY KEY (`article_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

--
-- Tablo döküm verisi `page_container`
--

INSERT INTO `page_container` (`article_id`, `category_id`, `article_active`) VALUES
(1, 1, 'true'),
(3, 1, 'true'),
(4, 1, 'true'),
(5, 1, 'true'),
(6, 1, 'true'),
(7, 1, 'true'),
(8, 1, 'true');

-- --------------------------------------------------------

--
-- Tablo için tablo yapısı `page_language`
--

CREATE TABLE IF NOT EXISTS `page_language` (
  `language_id` int(11) NOT NULL AUTO_INCREMENT,
  `content_id` int(11) NOT NULL COMMENT 'kategorilerin ve sayfanin icerigini tutan alanin id''si',
  `language_content` longtext NOT NULL,
  `language_type` enum('category_title','category_content','category_seo','article_title','article_content','article_seo') NOT NULL,
  `language_language` enum('tr','en','de','fr') NOT NULL,
  PRIMARY KEY (`language_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=30 ;

--
-- Tablo döküm verisi `page_language`
--

INSERT INTO `page_language` (`language_id`, `content_id`, `language_content`, `language_type`, `language_language`) VALUES
(1, 1, 'Genel', 'category_title', 'tr'),
(2, 1, 'genel', 'category_seo', 'tr'),
(3, 1, 'Sayfa Basligi', 'article_title', 'tr'),
(4, 1, 'Sayfa icerigi Steve', 'article_content', 'tr'),
(5, 1, 'sayfa-basligi', 'article_seo', 'tr'),
(6, 2, 'Steve Jobs', 'article_title', 'tr'),
  • Merak ettiğim bir konu var sorun hakkında. Yapmak istediğin şey her bir sayfanın bir şekilde (bir çok yöntem var çünkü) karşılığı var ise istenilen dildeki karşılığına geçmek mi yoksa sadece iki ayrı yapı olarak aynı database üzerinde çalışan iki farklı ve birbirinden bağımsız bir arayüz olarak her dil geçişinde o dilin ana sayfasına gitmek mi?
    wwwonrsoftcom 10 yıl önce yazdı
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • secginli adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    32 cevap - 3 soru
    Bu gibi bir yapıyla bizde bir süre önce bişeyler yaptık. En sağlıklı çözüm sayfa bazında değerleri xml içinde tutup xml erişimi ile mevcut dil karşılığı olan bilgileri yükletmek oldu. Database hali çok sağlıklı değil. Ortalama ziyarette ya maliyetleri arttırıp sistemi ayakta tutman gerekir yada sistem bir süre sonra iyice yıpranır.