Ошибка «не удается преобразовать строку в хэш» в приложении Rails

#ruby-on-rails #redmine #redmine-plugins

#ruby-on-rails #redmine #redmine-плагины

Вопрос:

Я пишу плагин Redmine и у меня есть этот код в контроллере:


@project = Project.find(params[:id])
@wiki = @project.wiki
@page = @wiki.find_page(params[:page])
@export1 = textilizable @page.content, :text, :attchments => @page.attachments

После вызова этого кода я получил ошибку:

TypeError (can't convert String into Hash):
app/helpers/application_helper.rb:516:in parse_wiki_links'
app/helpers/application_helper.rb:492:in
gsub!'
app/helpers/application_helper.rb:492:in `parse_wiki_links'

Что вызвало проблему и есть ли какой-либо способ ее исправить?
Спасибо.

Комментарии:

1. Это помогает определить, какая строка вызывает ошибку, чтобы мы могли быстрее сузить круг проблем.

2. Я получаю ошибку после вызова метода «textilizable».

Ответ №1:

возможно, ошибка в написании attachments , если это не предназначено для этого?

Комментарии:

1. Нет, я исправил неправильный ввод, и это не помогло. И я попытался удалить параметр «вложение», но это не возымело никакого эффекта…

Ответ №2:

Используйте отладчик и / или регистратор, чтобы увидеть, что передается в метод textilizable или в метод parse_wiki_links, затем найдите это в соответствующем API и посмотрите, что он ожидает передать.

Это всего лишь общие методы, которые вы должны использовать, когда сталкиваетесь с проблемой.