【发布时间】:2013-05-28 12:55:57
【问题描述】:
我在我的 Rails 应用程序中使用 Friendly id 允许从用户名进行自定义查询。
假设用户的用户名是loremipsum
rails 会显示这个http://localhost:3000/users/loremipsum,而且效果很好
但是说用户的用户名是lorem.ipsum 或lorem-ipsum
我怎样才能让rails在url中显示lorem.ipsum或lorem-ipsum,因为它目前占用第一部分,然后说Couldn't find User with id=lorem
我的用户控制器
class UsersController < ApplicationController
def index
@users = User.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @movies }
end
end
def search
@movies = @search.result
respond_to do |format|
format.html # index.html.erb
format.json { render json: @movies }
end
end
def show
@user = User.find(params[:id])
@movies = @search.result
end
def sign_up
@user = User.new
end
def sign_in
end
def create
@user = User.create( params[:user] )
if @user.save
sign_in @user
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
render 'new'
end
end
def edit
@user = @current_user
end
def update
if @user.update_attributes(params[:user])
sign_in @user
flash[:success] = "Profile updated"
redirect_to @user
else
render 'edit'
end
end
def destroy
User.find(params[:id]).destroy
flash[:success] = "User destroyed"
redirect_to users_path
end
def edit
end
end
【问题讨论】:
标签: ruby-on-rails friendly-url friendly-id