我使用回形针上传图片。
我想要的是,当文件存在时,而不是创建一个新记录,更新最后一个文件的名称。
在回形针中,文件名为path
。
我正在尝试这个:
def create
if(params[:path])
@photo = current_user.photos.update_attribute(:path, params[:path]).last
else
@photo = current_user.photos.new(photo_params)
end
end
我的文件输入名称为photo[path]
我想仅向现有行添加path
值:
答案 0 :(得分:0)
你可以在这里使用一些Rails魔法,特别是find_or_create_by
及其变体。例如,如果您这样做:
@photo = current_user.photos.find_or_create_by_path(params[:path])
首先会查找包含该路径的条目,如果找不到,则创建一个新条目。请注意,您也可以使用Ruby try method而不是if params[:path]
块。
有关find_or_create_by
的详细信息,请参阅the documentation。