Drupal 7 с использованием представлений, добавляющих страницу SQL-ошибка

У меня есть вид в Drupal 7, где я пытаюсь добавить еще одну страницу. Я получаю следующую ошибку:

PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 'data' at row 1: INSERT INTO {ctools_object_cache} (sid, obj, name, data, updated) VALUES ...etc...

It seems the blob data type is too small for the data being stored....If I change ctools_object_cache->data column to LONGBLOB, it works. But is this the best way to fix this?

2
Ну, я просто спрашиваю, что такое решение. Казалось бы, такие вещи, как мой сценарий, довольно часто встречаются с представлениями Drupal ... Он просто ломается ...
добавлено автор Chris Muench, источник
Вы наливаете 5 галлонов воды в чашку 5 унций и хотите знать, не делает ли чашку больше не лучшим решением?
добавлено автор Marc B, источник
@MarcB: Это довольно разумный вопрос в контексте Drupal, если честно
добавлено автор Clive, источник

1 ответы

Вы можете столкнуться с проблемами при обновлении модуля ctools, если вы просто измените схему поля непосредственно в базе данных. Если ctools вносит какие-либо изменения в этот столбец, это может привести к старому размеру, и вы можете потерять данные.

Как и изменение поля базы данных, было бы неплохо исправить ctools_schema() (в файле .install модуля) и изменить столбец на LONGBLOB . Затем, когда выйдет новая версия ctools, вы можете обновить ее в обычном режиме и повторно установить файл установки, если вам нужно (помните, что эта проблема могла быть отправлена ​​в очередь на выпуск модуля, и аналогичное исправление могло быть применено в хосте update в модуле ctools, перед обновлением вам нужно посмотреть файл .install новой версии, чтобы убедиться).

2
добавлено