Tôi muốn chuyển đổi tiêu đề của trang thành URL thân thiện và lưu trữ nó trong cơ sở dữ liệu dưới dạng liên kết cố định. Vấn đề của tôi là tôi không thể sử dụng phương pháp parameterize
. Nó không hoạt động. Các biến thể khác đang hoạt động như upcase
hoặc downcase
nhưng parameterize
không hoạt động. Có trường hợp đặc biệt nào cho parameterize
không?Làm thế nào để sử dụng parameterize trong Rails?
Đây là mã của tôi:
Bộ điều khiển:
def create
params[:page][:permalink] = params[:page][:title].dup
@page = Page.new(params[:page])
end
mẫu:
class Page < ActiveRecord::Base
before_save :makeitpermalink
before_update :makeitpermalink
private
def makeitpermalink
permalink.parameterize!
end
end
Chào mừng bạn trên SO, vui mừng khi thấy những người say mê đường ray ở đây. Lần tới hãy thử sử dụng định dạng mã và đặt câu hỏi của bạn một tiêu đề tốt hơn để nhận phản hồi. Tôi vừa chỉnh sửa bài đăng của bạn, nhưng chỉ để bạn biết. Về câu hỏi tôi không biết. Bạn có thể cung cấp thông báo lỗi hoặc kết quả bạn nhận được không? – marcgg
Trong mô hình, bạn cũng chỉ cần có callback before_save; before_update là không cần thiết. – amaseuk
btw nếu u có "before_save", "before_update" là dư thừa – choonkeat