我正在开发一个应用程序,用户可以在其中为图片添加标签。他第一次上传图片时没有机会分配标签。但是,这些标签可以在best_in_place gem的帮助下进行更改。这将调用图片控制器中的更新操作。
在这里,我将通过params hash获取这些标签。我现在正在尝试为每个标记创建一个新的标签模型实例,可以在params哈希中找到。不幸的是,我不知道,我会怎么做。这是我的第一个问题,因为我无法将表单直接链接到标签控制器。
另一个问题:如果我创建了这些标签,我不想将标签本身存储在图片表中的相应列表中,而是我刚创建的那些标签的ID。我如何操纵更新操作才能实现这一目标?
目前更新操作如下:
def update
@model = Pictures.find params[:id]
respond_do |format|
params[:pictures][:tags] do |tag|
tag = @tags.new <- create new tags here
end
if @model.update_attributes(params[:pictures])
format.json { respond_with_bip(@model) }
format.json { redirect_to action: 'show', status: :created, location: @model }
end
end
我对Ruby on Rails相当新,所以这可能是一个简单的问题,但是任何帮助都会受到赞赏。