2012-02-22 2 views
0

У меня есть приложение для рельсов, которое в свою очередь использует приложение synatra. Я добавил эту строку маршрутовОшибка при установке приложения sinatra в рельсах

mount TestApp::Application => "/test_app" 

Теперь при доступе /test_app маршрутов дает

TypeError (no marshal_dump is defined for class Mutex) 

если RAN против Руби 1.9.2 и рельсы 3.2.1. Приложение Sinatra использует камень манго.

Теперь, когда я запускаю это приложение против рубин 1.8.7 и рельсы 3.2.1, она дает следующие ошибки

TypeError (can't dump TCPSocket) 

Любая помощь высоко ценится.

+0

Вы сами пишете оба приложения? Что они делают? –

+0

Да, да. Оба приложения являются обычным приложением. Мы повторно используем приложение synatra, которое уже было там. Он работает отлично. – ducktyped

+0

Это может быть проблема со стойкой. Я использовал стойку в синатре app 'use Rack :: Session :: Pool,: expire_after => 2592000' – ducktyped

ответ

-1

Предполагая, что вы обязаны ваш TestApp :: Application правильно, я думаю, что ваше определение маршрутов должно быть:

match "/test_app", :to => TestApp::Application 

Смотрите Rails Routing from the Outside in для получения дополнительной информации.

+0

Извините! но это не будет статическим содержимым сервера из синатра. И FYI 'mount TestApp :: Application =>"/test_app "' является единственным способом решения проблемы статического содержимого. – ducktyped

+0

Кажется немного суровым ... вы не указали статический контент в своем вопросе. Как неверно это предложение? У меня создалось впечатление, что mount использует совпадение для его маршрутизации? [Http://living5to9.com/2011/11/rails-routes-match-and-mount](http://living5to9.com/2011/11/rails-routes-match-and-mount/) –

Смежные вопросы