Переписывание маршрута Rails - PullRequest
0 голосов
/ 18 мая 2010

Я думаю, что это простой вопрос. Я использую этот полезный Flash Document Reader под названием FlexPaper . У меня есть это в одной из моих страниц шоу. Но когда я щелкаю ссылку на их панели инструментов, чтобы показать документ в новом браузере, он указывает на следующую ссылку:

http://example.com/intels/FlexPaperViewer.swf?ZoomTime=0.5&FitPageOnLoad=false&PrintEnabled=false&SwfFile=%2FPaper.swf

, который не работает, я получаю следующую ошибку:

ActiveRecord :: RecordNotFound в IntelsController # show

Не удалось найти Intel с ID = FlexPaperViewer

но если я уберу "intels" из пути, URL будет выглядеть так:

http://example.com/FlexPaperViewer.swf?ZoomTime=0.5&FitPageOnLoad=false&PrintEnabled=false&SwfFile=%2FPaper.swf

Работает нормально.

Мой вопрос: как лучше всего справиться с этим? Можете ли вы написать маршрут, который переписывает URL, начинающийся с intels/FlexPaperViewer.swf, и удаляет префикс intels? Как это будет выглядеть?

Есть ли лучший вариант?

1 Ответ

0 голосов
/ 18 мая 2010

Если подумать, как насчет размещения FlexPaperViewer.swf в папке public / intels?

Таким образом, структура каталогов будет

<project-directory>/public/intels/FlexPaperViewer.swf

Это сделает ссылку правильной. Кажется, так проще сделать. Надеюсь, это поможет.

EDIT

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

Мне не известны какие-либо изменения маршрута, которые могут делать то, что вы хотите. Может быть, кто-то еще может помочь в этом.

...