Моя модель только сохраняет часть информации - PullRequest
0 голосов
/ 08 марта 2011

Это простая форма рельсов с использованием CKeditor.

Я сохраняю содержимое, оно появляется в обновлении.

pp params[:email]["body"]
"<br />\r\nheyyy<br />\r\nbut now i am going to save this past 9 lines.<br />\r\ncuz  that&#39;s what this is all about<br />\r\n<br />\r\nI am crazy like that<br />\r\nc<br />\r\ncrazy<br />\r\ncrazy c<br />\r\ncrazy<br />\r\n<br />\r\nhere is another line..<br />\r\noh@!!&amp;<br />\r\nfa<br />\r\nsdf<br />\r\nas<br />\r\ndf<br />\r\nasd<br />\r\nfa<br />\r\nsdfasdf<br />\r\n"

Тогда мой контроллер выглядит так:

@emails = Email.find(params[:id])

Тогда! После того, как это вызвано, я набираю @emails.body в ruby-debug, и он выводит половину этого! :

@emails.body
"<br />\r\nheyyy<br />\r\nbut now i am going to save this past 9 lines.<br />\r\ncuz  that&#39;s what this is all about<br />\r\n<br />\r\nI am crazy like that<br />\r\nc<br />\r\ncrazy<br />\r\ncrazy c<br />\r\ncrazy<br />\r\n<br />\r\nhere is another line..<br />\r\noh@!!&"

Почему это произошло?

Атрибут сохраняется как строка в моей базе данных.

Ответы [ 3 ]

1 голос
/ 08 марта 2011

Скорее всего, вы храните его в базе данных как текст, а не как текст. В зависимости от длины varchar, он просто обрезает данные, а не возвращает ошибку. Вы можете легко изменить тип столбца в миграции:

change_column :my_table, :my_column, :text
1 голос
/ 08 марта 2011

Какой тип столбца body? Может быть, это MySQL varchar(255) или что-то похожее, что просто перегружается?

0 голосов
/ 08 марта 2011

Вы уверены, что звонили:

 @emails.save

в контроллере ??

Если это так, попробуйте позвонить:

 @emails.save!

Должно появиться сообщение об ошибке, если что-то пойдет не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...