如何在使用 friendly_id 时获得实际 post.id
How to get actual post.id while using friendly_id
我目前的 post 模型使用 friendly_id 将 Post.id
替换为 Post.pid
:
friendly_id :pid, :use => :scoped, :scope => :id
如何获取 post 的实际 ID 而不是 slug,以便在回复保存时将 Post.id
而不是 Post.slug
保存到 Reply.post_id
。
我需要这样做,因为 post 由于 post.pid
不是唯一的
而在其他论坛上创建的回复出现了
class RepliesController < ApplicationController
def create
@board = Board.friendly.find(params[:board_id])
@post = Post.friendly.find(params[:post_id])
@reply = @post.replies.create(reply_params)
@post.touch
redirect_to @board
end
private
def reply_params
params.require(:reply).permit(:name, :email, :subject, :comment, :reply_file)
end
end
尝试通过董事会确定您的 Post.find
范围:
@post = @board.posts.friendly.find params[:post_id]
我目前的 post 模型使用 friendly_id 将 Post.id
替换为 Post.pid
:
friendly_id :pid, :use => :scoped, :scope => :id
如何获取 post 的实际 ID 而不是 slug,以便在回复保存时将 Post.id
而不是 Post.slug
保存到 Reply.post_id
。
我需要这样做,因为 post 由于 post.pid
不是唯一的
class RepliesController < ApplicationController
def create
@board = Board.friendly.find(params[:board_id])
@post = Post.friendly.find(params[:post_id])
@reply = @post.replies.create(reply_params)
@post.touch
redirect_to @board
end
private
def reply_params
params.require(:reply).permit(:name, :email, :subject, :comment, :reply_file)
end
end
尝试通过董事会确定您的 Post.find
范围:
@post = @board.posts.friendly.find params[:post_id]