Hallo woodfighter,
ok, beim Beitrag auf den ich gerade antworte, konnte ich Bug als Tag beim editieren hinzufügen (taucht trotzdem nicht in der History auf), das scheint also kompliziertere Hintergründe zu haben oder ich stelle mich doof an.
Mit dem „Tags neu vergeben“-Button hat das nichts zu tun, das sind zwei unterschiedliche code pathes. Aber auch so kann ich dein Problem nicht nachvollziehen. Kannst du das vielleicht nochmal testen? Dem Code nach wäre das schon so merkwürdig, entweder das ganze Posting wird gespeichert oder gar nichts wird gespeichert, das passiert alles in einer Transaktion:
CfMessage.transaction do
raise ActiveRecord::Rollback unless @message.save
@message.tags.delete_all
raise ActiveRecord::Rollback unless save_tags(current_forum, @message, @tags)
if del_versions
CfMessageVersion.delete_all(['message_id = ?', @message.message_id])
else
raise ActiveRecord::Rollback if @version and not @version.save
end
if params[:retag_answers] == '1' and may?(RightsHelper::RETAG)
@message.all_answers do |m|
m.tags.delete_all
raise ActiveRecord::Rollback unless save_tags(current_forum, m, @tags)
end
end
saved = true
end
Das raise ActiveRecord::Rollback
würde die ganze Transaktion rollback-en und den Block verlassen.
LG,
CK