Приложение сервера Ruby on rails + IOS клиент для iphone? - PullRequest
8 голосов
/ 06 февраля 2012

Каков наилучший способ получить обычное приложение ruby ​​on rails с приложением IOS для iphone?

Идея состоит в том, чтобы создать для школьного проекта для развлечения и образования простое приложение для Iphone, которое для своих данных подключается к приложению ruby ​​on rails. Видел некоторые статьи устаревшие, хотел бы спросить совета по этому серверу - модель клиента для ruby ​​и приложения ios.

  • Как переместить данные из приложения ruby ​​в приложение IOS xml?
  • Как взаимодействовать из приложения IOS обратно с приложением Ruby on Rails?
  • Существуют ли примеры приложений с открытым исходным кодом или недавно обновленные ресурсы, которые вы бы порекомендовали по этой теме (гемы, проекты с открытым исходным кодом, учебные пособия, документация)

Кроме того, какие веб-сайты можно было бы использовать при работе с ruby ​​на рельсах и приложениях для Iphone? Хотелось бы услышать некоторые отзывы, я уже исследовал и имею грубое представление о вышеупомянутых концепциях, но, как сказано, о старых ресурсах. Некоторые из первых рук от ваших экспертов будут высоко оценены, спасибо!

Ответы [ 2 ]

10 голосов
/ 06 февраля 2012

Общая настройка для бэкэнда Rails, например, такая:

Аутентификация : использовать базовую схему аутентификации для аутентификации в бэкэнде rails.Я бы использовал для этого Devise и CanCan , они просты в настройке и отлично работают.Если вы не хотите, чтобы люди входили в систему, но, тем не менее, хотите аутентификацию, вы можете использовать токен.

Push-уведомления : используйте APN Gem

GET data : используя GET-контроллеры вашего бэкэнда Rails, вы можете либо специально запросить json, либо просто вернуть json по умолчанию /articles/:id.json

def show
  begin
    @article = Article.find(params[:id])
  rescue Exception => e
    render :text => "unknown article id", :status => 404
  else
    render json: @article
  end
end

Если вам нужен пользовательскийJSON вернулся.Вы можете переопределить его в модели:

#overide default json output
def as_json(options)
  # this ignores the user's options
  super(:only => [:id , :type, :title, :content])
end

CREATE data : используйте контроллер Create вашего бэкэнда Rails, вы можете просто отправить, как если бы вы создали форму, поэтому POSTс полями типа article[:title]=value.Если хотите, вы можете вернуть plain text или json, если создание было успешным.

ОБНОВЛЕНИЕ данных : используйте контроллер обновлений вашего бэкэнда rails.Вы используете PUT здесь вместо POST.

0 голосов
/ 09 июля 2012

В дополнение к данному ответу: у нас очень хороший опыт работы с RABL: https://github.com/nesquena/rabl

Мы создаем plist-файлы для отправки данных на iOS-устройства.

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