对于每个original_url
(由用户输入),我生成short_url
,并在将其保存到数据库后,显示short_url
代替original_url
。我能够做到这一点。
现在我想知道如果URL已经缩短了,那么可以直接从数据库中检索它而不会再次短路。</ p>
我这样做的想法是将用户输入的original_url
与db中的{0}进行比较,如果发现直接检索short_url
,则缩短original_url
。
但我无法做到这一点......请帮助我。如果还有其他更好的主意,请告诉我。提前谢谢。
def show
@url = Url.find(params[:id])
if Url.find_by_original_url(@url.original_url)
@url.short_url
else
@short_url
end
end
答案 0 :(得分:3)
如果您填写short_url列,那么为什么不检查那里是否有东西?
def show
@url = Url.find(params[:id])
unless @url.short_url
# shorten the URL
end
end
或
def show
@url = Url.find(params[:id])
if @url.short_url
else
# shorten the URL
end
end