Да, это из-за ruby способа чтения escape-символа. Вы можете прочитать объяснение прямо здесь: Экранирующие символы в Ruby
Однажды я получил эту проблему, и я просто использую gsub!
, чтобы изменить \\n
на \n
. Что вы должны сделать, это:
def register
begin
request = {
id: params[:key].gsub!("\\n", "\n")
}
.........
end
end
Помните, вы должны использовать двойные кавычки "
вместо одинарных кавычек '
. По ссылке, которую я дал:
Разница между одиночными и двойными кавычками в Ruby заключается в том, как определения строк представляют escape-последовательности.
В строках с двойными кавычками вы можете писать escape-последовательности и Ruby выведет их переведенное значение. A \ n становится новой строкой. Однако в одиночных кавычках экранирующие последовательности экранируются и возвращают свое буквальное определение. A \ n остается \ n.