Drupal - Unknown column в Views

Случился у меня недавно бред: в представление добавил как аргумент поле даты контентного типа и при применении этого аргумента запрос обваливался с ошибкой SQL:

Exception: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'field_data_field_date.field_date_value' in 'where clause' in views_plugin_query_default->execute() (line 1314 of /.../sites/all/modules/views/plugins/views_plugin_query_default.inc).

Это такой официально признанный баг модуля date. Лечится довольно просто - идём в файл date_api_argument_handler.inc, находим строку 279 и видим это:

if (! empty($this->relationship)) {
  if (! empty($this->query_fields)) {
    foreach ($this->query_fields as $query_field) {
      $field = $query_field['field'];
      $this->related_table_alias = $this->query->queue_table($field['table_name'], $this->relationship);
    }
  }
}

Здесь удаляем или комментируем строку:

if (! empty($this->relationship)) {

и не забываем про закрывающую скобку. Всё это можно смело делать, потому как уже в версии 6.2.7 date-модуля это уже исправлено, т. е. при обновлении не возникнет никаких проблем.

Новый комментарий

Содержимое этого поля не будет отображаться публично.
Image CAPTCHA
Привет всем роботам!

Работает на

Работает на Друпале, системе с открытым кодом Валидный XHTML Валидный CSS
Блогнот 2010. Войков Константин