DatabaseSchemaObjectExistsException: Table panels_display already exists. in DatabaseSchema->createTable()

Blog Kategori: 

Eğer ki drupal ile çalışırken panels node eklemeye çalışırken DatabaseSchemaObjectExistsException: Table panels_display already exists. in DatabaseSchema->createTable() hatası alıyorsanız. Aşağıdaki adımları takip edin.

1-

diff --git a/includes/common.inc b/includes/common.inc
index 3b4bf58..c5ebf7a 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -6941,7 +6941,9 @@ function drupal_install_schema($module) {
   _drupal_schema_initialize($schema, $module, FALSE);
 
   foreach ($schema as $name => $table) {
-    db_create_table($name, $table);
+    if (!db_table_exists($name)) {
+      db_create_table($name, $table);
+    }
   }
 }
 

2-

/includes/database/schema.inc dosyasındaki 658. satırdaki

  public function createTable($name, $table) {
    if ($this->tableExists($name)) {

kodundan sonra

        drupal_set_message(t('Table %name already exists.', array('%name' => $name)));

kodunu ekleyin.

      throw new DatabaseSchemaObjectExistsException(t('Table @name already exists.', array('@name' => $name)));

kodundan sonra da

      return;

kodunu ekleyin.

3- Tüm önbellek ve authcache gibi önbelleklemeleri temizleyin. Gerekirse veritabanınızdaki cache_.... diye başlayan önbellekleri de temizleyin.

4- Panels ile ilgili eklentileri devre dışı bırakıp kaldırın.

5- update.php dosyanızı çalıştırın.

6- Panels ile ilgili eklentilerinizi yeniden aktif edin.

7- update.php dosyanızı tekrar çalıştırın.

Sorun çözülecektir. İyi çalışmalar.

Yeni yorum ekle

GezdeAl.com - Gezmeden Almam Diyenlerin Sitesi