2012-05-02 2 views
0

У меня есть users_controller, который имеет эту функцию в нем:Получение этого link_to помощника, чтобы вызвать Вид- получение маршрутизации ошибки

def process_csv 
puts 'processing csv file' 
end 

Тогда у меня есть show.html.erb файл с «link_to» наклеивают Это.

<%= link_to 'Click HERE to open file', @user.image.url %><br/><br/><br/> 
<%= label_tag(:q, "Parse CSV File:") %><br/> 
<%= link_to 'Parse CSV', {:controller => "users", :action => "process" } %> 
<% end %> 

Это выход из моих рек маршрутов:

process_users GET /users/process(.:format)  users#process 
    users GET /users(.:format)    users#index 
      POST /users(.:format)    users#create 
new_user GET /users/new(.:format)   users#new 
edit_user GET /users/:id/edit(.:format) users#edit 
    user GET /users/:id(.:format)   users#show 
      PUT /users/:id(.:format)   users#update 
      DELETE /users/:id(.:format)   users#destroy 
listings GET /listings(.:format)   listings#index 
      POST /listings(.:format)   listings#create 
    new_listing GET /listings/new(.:format)  listings#new 
    edit_listing GET /listings/:id/edit(.:format) listings#edit 
    listing GET /listings/:id(.:format)  listings#show 
      PUT /listings/:id(.:format)  listings#update 
      DELETE /listings/:id(.:format)  listings#destroy 

Это мой routes.rb файл

resources :users do 
    collection do 
    get:process 
end 
end 

ресурсы: объявления

Когда я щелкаю по ссылке в файле show.html.erb. Я надеялся быть направленным на просмотр process.html.erb. Вместо этого я получаю сообщение об ошибке:

Routing Error 
No route matches [GET] "/assets" 

Ive пробовал много сочетаний переключений, однако ничего не сработало. Так что мне интересно, может ли кто-нибудь дать мне руку.

Спасибо,

+0

Я видел ваш дополнительный вопрос. так как есть 2 ссылки в show.html.erb, не могли бы вы прояснить, какая ссылка вы нажали, что вызывает «Ошибка маршрутизации»? и не могли бы вы опубликовать сгенерированный HTML? –

ответ

1

ошибка вызвана «активами», но не «маршруты», поэтому, пожалуйста, убедитесь, что вы используете «актив-трубопровод» правильно.

Если вы находитесь в режиме «разработки», поместите все изображение/js/css в папку «app/assets».

, если вы находитесь в режиме «производства», пожалуйста, убедитесь, что вы сделали это: bundle exec rake assets:precompile

для получения дополнительной информации трубопровода активов, пожалуйста, обращайтесь: http://guides.rubyonrails.org/asset_pipeline.html#in-production

BTW, так как вы используете RESTful маршруты , пожалуйста, измените 'link_to' от:

<%= link_to 'Parse CSV', {:controller => "users", :action => "process" } %> 

к:

<%= link_to 'Parse CSV', process_csv_users_path %> 

в то же время, дать соответствующее действие более читаемый имя:

resources :users do 
    collection do 
    get :process_csv 
    end 
end 

и в контроллере:

class UsersController ... 
    def process_csv 
    puts "bla bla bla" 
    end 
end 
+0

Теперь я получаю ошибку после реализации этих изменений :( ArgumentError в UsersController # индексе неверного числа аргументов (1 для 0) – banditKing

+0

пожалуйста, напишите соответствующий код. (Я полагаю, ваш Еврорадио проблемы) –

+0

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

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

  • Нет связанных вопросов^_^