如何将我的网址更改为帖子链接ID?

时间:2018-05-17 04:43:42

标签: ruby-on-rails

我必须为我的项目设计一个像网站一样的reddit / hacker新闻。当我点击帖子的网址时,它就像www.website.com/links/4。我需要将网址路径设为www.website.com/item?id=1234

不太清楚从哪里开始。尝试使用slug但我没有运气。

编辑:

的routes.rb

Rails.application.routes.draw do
resources :links, except: :index do
resources :comments, only: [:create]
end
get '/comments' => 'comments#index'
resources :users, only: [:new, :create]
resources :sessions, only: [:new, :create] do
delete :destroy, on: :collection
end
get 'misc/about'
get 'users/new' 
root 'links#index'
end

1 个答案:

答案 0 :(得分:0)

你的问题根本不清楚,看起来你缺乏关于rails和路由的一些基本知识。 以下是一些可帮助您入门的文档:

http://guides.rubyonrails.org/routing.html

https://richonrails.com/articles/understanding-rails-routing

请不要犹豫,阅读stackoverflow的优秀问题指南,以撰写出色的问题。 https://stackoverflow.com/help/how-to-ask

首先,您必须检查路线中是否有这条线或添加它:

get "/item", to: "method#controller"

您必须使用get路线,如果使用post路线,您的参数将通过“隐身”参数传递。您将使用item = params[:item]

在控制器中检索它们

然后,您必须更改文章视图中的link_to,例如

<%= link_to "/item?id=" + item_id, "Link to item" %>

如果您想要更准确的答案,请发布更准确的问题,如果您需要,请不要忘记接受答案。