Я планирую написать новый код пользовательского интерфейса, и многие люди предлагали использовать RoR. Но из того, что я читал о RoR до сих пор, почти обязательно иметь базу данных для хранения внутренних данных. В моем случае у меня нет доступа к базе данных, и все мои объекты данных доступны через веб-службы (некоторые службы REST и SOAP).

Я думаю, что в этом случае мне нужно использовать контроллер для прямого общения со службами, но все же стоит ли использовать RoR без уровня модели (ActiveRecord).

Существуют ли какие-либо другие фреймворки, более подходящие для такого подхода (я могу использовать что угодно на Java или Ruby, у нас нет кода PHP или Python).

6
Arvind 22 Июн 2009 в 09:05

2 ответа

Rails отлично подойдет для этого; он явно поддерживает работу без ActiveRecord. См. комментарий в файле environment.rb по умолчанию:

# Skip frameworks you're not going to use. To use Rails without a database
# you must remove the Active Record framework.
# config.frameworks -= [ :active_record, :active_resource, :action_mailer ]

Ваш файл database.yml будет проигнорирован, если вы не загрузите ActiveRecord; все ваши модели могут наследоваться от ActiveResource::Base и будут работать нормально.

3
Jim Puls 22 Июн 2009 в 09:10
Таким образом, я могу настроить проверки таким же образом?
 – 
Arvind
22 Июн 2009 в 10:33
Разве они не были бы на другом конце служебного вызова? А если это не так, не могли бы вы просто переопределить метод сохранения?
 – 
Jim Puls
22 Июн 2009 в 10:51

Если вам нужны только веб-сервисы, я бы рекомендовал sinatra. Sinatra упрощает работу приложений, работающих с веб-сервисами. Если вам нужен аналогичный подход к клиенту с URL-адресами фрагментов, ознакомьтесь с sammy. Они оба отлично подходят для создания веб-приложений с нетрадиционными источниками данных.

0
Vagmi Mudumbai 22 Июн 2009 в 14:51