2012-01-04 1 views
1

Я очень хочу попробовать DataMapper для нового проекта Rails. Я создал проект, используя следующую команду:Новые Rails 3.1.3 + Выпуск активов маршрутизации Datamapper

rails new project_name -m http://datamapper.org/templates/rails.rb 

я решил проверить мое приложение, запустив:

rails server 

Когда я иду к общей домашней странице, которая создана, я не могу видеть любые изображения. Я получаю сообщение об ошибке с указанием:

ActionController::RoutingError (No route matches [GET] "/assets/rails.png") 

Если я создаю какие-либо другие строительные леса и посетить эти страницы, я получаю подобные ошибки о таблицах стилей или Javascript не найден. Я дважды проверил, чтобы убедиться, что работает обычное приложение Activerecord-rails (что и было). Я довольно озадачен. Любая помощь будет принята с благодарностью. Спасибо :)

+0

Почему это '' /asets/rails.png "' вместо '' /assets/rails.png? '? – Robin

+0

Упс! Я имел в виду активы;) Я изменю этот – Silverbolt

ответ

2

По какой-то причине шаблон Rails DataMapper полностью заменяет стандарт Gemfile своим собственным, который не включает в себя какие-либо элементы обработки активов (он также удаляет несколько других вещей, таких как поддержка jQuery, TestUnit, ActionMailer ...).

Вы хотите добавить их обратно в свой Gemfile после установки нового приложения: предложение

group :assets do 
    gem 'sass-rails', '~> 3.1.5' 
    gem 'coffee-rails', '~> 3.1.1' 
    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 

Per Фредерик ниже, вы также хотите, чтобы добавить это в файл config/application.rb:

require 'sprockets/railtie' 

I opened an Issue и submitted a pull request, чтобы исправить это.

Обновление: По состоянию на 1/5/2012 это исправлено. Шаблон ведет себя почти идентично стандартным приложениям Rails 3.1, причем единственным изменением является замена ActiveRecord на DataMapper. Активация/поддержка jQuery теперь работает.

+0

, он также изменит 'require 'rails/all'' в application.rb на явный список фреймворков, но пропускает звездочки, которые используются для доставки активов в 3.1. Добавление «require» sprockets/railtie'' в application.rb должно помочь. –

+0

А, да. Я обновлю свою проблему. –

+0

Спасибо Дилан и Фредерик =) – Silverbolt