2014-11-25 1 views
0

Я пытаюсь создать приложение с активными и Neo4j моделями, и я хочу использовать следующий для моих Neo4j моделей:как удалить префикс путь в routes.rb

module Neo 
    class Usernode 
    include Neo4j::ActiveNode 
    property :first_name, type: String 
    property :last_name, type: String 
    property :address, type: String 
    end 
end 

И использовать их в моем контроллер, как следующее:

class UsernodesController < ApplicationController 

    def index 
    @usernodes = Neo::Usernode.all 
    end 

в моем файле routes.db я следующий маршрут для этого:

Rails.application.routes.draw do 
     resources :usernodes, path: '/usernodes' 
    end 

Проблема заключается в том, что он создает только маршруты с '/neo/usernodes/', и я хочу использовать маршруты только с '/usernodes/'.

Можно ли только продукт '/usernodes/'? Если да, как я могу это сделать?

тогда, если я использую в routes.db:

resources :usernodes, path: '/usernodes' 

Я получаю следующее сообщение об ошибке:

Processing by UsernodesController#new as HTML 
Rendered usernodes/_form.html.erb (12.2ms) 
Rendered usernodes/new.html.erb within layouts/application (12.7ms) 
Completed 500 Internal Server Error in 15ms 
ActionView::Template::Error (undefined method 'neo_usernodes_path' for 
#<#<Class:0x0000000788e968>:0x000000089f3c08>): 
    1: <%= form_for(@usernode) do |f| %> 
    2: <% if @usernode.errors.any? %> 
    3:  <div id="error_explanation"> 
    4:  <h2><%= pluralize(@usernode.errors.count, "error") %> prohibited this usernode from being saved:</h2> 

это мои маршруты:

Prefix Verb URI Pattern     Controller#Action 
     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 
       PATCH /users/:id(.:format)   users#update 
       PUT /users/:id(.:format)   users#update 
       DELETE /users/:id(.:format)   users#destroy 
    usernodes GET /usernodes(.:format)   usernodes#index 
       POST /usernodes(.:format)   usernodes#create 
new_usernode GET /usernodes/new(.:format)  usernodes#new 
edit_usernode GET /usernodes/:id/edit(.:format) usernodes#edit 
    usernode GET /usernodes/:id(.:format)  usernodes#show 
       PATCH /usernodes/:id(.:format)  usernodes#update 
       PUT /usernodes/:id(.:format)  usernodes#update 
       DELETE /usernodes/:id(.:format)  usernodes#destroy 
+0

Разве это не линия маршрута, окруженная блоком 'namespace: neo'? –

+0

не 'neo_usernodes_path', как вы можете видеть в маршрутах helper должен' new_usernode_path' для 'new' action и' usernodes_path' для 'index' action –

+0

его, вероятно, неправильно, но я не могу его найти. В любом случае thx для ваших парней поможет :) –

ответ

0

Пожалуйста, попробуйте ниже:

resources :usernodes, module: 'neo', path: 'usernodes' 
+0

ну, тогда я получаю следующую проблему: 'undefined method neo_usernodes_path для # <# <Класс: 0x000000089803> 0x000000089f3c08>' –

+0

@JamesRamsfield, пожалуйста, разместите контент 'routes.rb' и output 'bundle exec rake routes' –

+0

У меня есть моя проблема, потому что я не могу сделать это хорошо в этом маленьком комментарии. –

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