即使在使用slug之后,该URL仍然显示id而不是标题。 如下代码Friendly_ID Ruby on Rails
index.html.erb
<title>Blog!</title>
<h1>List of the Posts</h1>
<% @posts.each do |post| %>
<%= link_to post.title,:id => post.slug%>
<p><%= post.content %></p>
<%= link_to "Edit",edit_post_path(post) %> |
<%= link_to "Delete",post,:confirm=>"Are you sure ?",:method=>:delete %>
<hr />
<% end %>
<p><%= link_to "Add a New Post",new_post_path %></p>
posts_controller.rb
class PostsController < ApplicationController
def index
@posts=Post.all
end
def show
@posts=Post.find(params[:id])
end
端
邮政模型
extend FriendlyId
friendly_id :title,use: :slugged
def should_generate_new_friendly_id?
new_record
end
的routes.rb
Blog::Application.routes.draw do
get "blog/posts"
resources :posts
end
我想链接是 '本地主机:8080 /职位/这是+的+标题' 而不是'本地主机:8080 /帖子/ 2'
它是不好的格式,或者你在你的控制器中做'extend'等吗? – pduersteler 2013-02-15 10:55:30