gpt4 book ai didi

ruby-on-rails - 复制带有回形针附件的记录

转载 作者:数据小太阳 更新时间:2023-10-29 07:30:12 24 4
gpt4 key购买 nike

我正在创建一个复制项目的操作,然后允许用户对其进行编辑并将其保存回数据库。

我在我的 Controller 中编写了以下方法,它主要与回形针附件不同,回形针附件由于某种原因不会移动。

def duplicate
existing_event = Event.find(params[:id])
@event = Event.new(existing_event.attributes)

render action: 'new'
end

我看过 this question人们正在使用 .dup 但我似乎无法在用户在保存之前编辑新项目的情况下工作。

我也尝试过使用像 @event.image = existing_event.image 这样的东西,但也没有任何效果。

这是我的创建方法的样子:

def create
@event = Event.create(event_params)

if @event.save
redirect_to events_path, notice: "Event was successfully created."
else
render action: 'new'
end
end

如果有什么不同的话,我也使用 S3 进行图片上传,如果那里有多个图片副本对我来说并不重要。

有人可以帮忙吗?谢谢!

最佳答案

传递附件参数就是这样做的:传递参数。
您需要传递文件本身
您可以在下面了解如何操作,而不是对其进行测试,但您可以尝试并使其发挥作用,应该不会那么难。

new Action 上:

existing_event = Event.find(params[:id])
@event = Event.new(existing_event.attributes)

@event.image = File.open(existing_event.image.path,'rb')

render :action => 'new'

还有:
检查您的 create 操作,您有一个小错误,为同一记录调用 createsave - 这是多余的。您应该调用 @event=Event.new(event_params),然后调用 if @event.save

关于ruby-on-rails - 复制带有回形针附件的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23478199/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com