0

我可以使用什么路径来显示current_user自己列出的产品?

= button_to "View My Products", root_path, method: :get, class: "button"

而不是root_path我尝试使用@product.user.allwhich 不起作用。

谢谢!

编辑:

            user GET    /users/:id(.:format)           users#show
     search_products GET    /products/search(.:format)     products#search
            products GET    /products(.:format)            products#index
                     POST   /products(.:format)            products#create
         new_product GET    /products/new(.:format)        products#new
        edit_product GET    /products/:id/edit(.:format)   products#edit
             product GET    /products/:id(.:format)        products#show
                     PATCH  /products/:id(.:format)        products#update
                     PUT    /products/:id(.:format)        products#update
                     DELETE /products/:id(.:format)        products#destroy
       welcome_index GET    /welcome/index(.:format)       welcome#index
                root GET    /                              welcome#index

以及 Devise 的所有标准路线。

4

1 回答 1

1

我认为您想要一个产品控制器索引操作以及用户和产品之间的关联

然后在 products#index 动作中

def index
  @products = current_user.products
end

你的链接将是

= link_to 'View My Products', {controller: :products, action: :index}

如果您针对未经过身份验证的用户的 product#index 操作,则将该操作设为有条件的,例如 @products = (current_user ? current_user.products : Product.all)

于 2015-08-30T11:43:40.753 回答