как сделать активным ресурсом новую запись, совпадающую с ожидаемой публикацией данных - PullRequest
1 голос
/ 31 октября 2011

У меня есть ресурс, который отправляет туда сообщение «host [name] = example.com» - создает новую запись хоста с именем example.com

Следующие работы

curl http://localhost:3300/hosts.xml --request POST --data "host[name]=example.com"

Попытка сделать то же самое с активным ресурсом завершается неудачей

class Hosts < ActiveResource::Base
  self.site = "http://localhost:3300/"
  self.format = :xml
end

newhost = Hosts.new(:name => 'example.com')
newhost.save`

save возвращает true, но новый хост не создается.Использование поиска и уничтожения на существующих записях хоста работает нормально.

AFAIU Hosts.new (: name => 'example.com') не генерирует ожидаемые данные поста "host [name] = example.com".Есть ли способ, которым я мог бы сделать новую запись активного ресурса узла, чтобы соответствовать ожидаемым данным поста?

1 Ответ

0 голосов
/ 03 ноября 2011

Попробуйте:

newhost = Hosts.create(:name => 'example.com')

и посмотрим, что получится.

также - возможно, Rails смущает название вашей модели. Возможно, вы ожидаете, что вы отправите сообщение «хостам» в качестве плюрализма.

попробуйте назвать его "Host" вместо "Hosts", затем отправьте сообщение на "hosts"

...