如何在CakePHP's TranslateBehavior中只删除一个翻译


How to remove only one translation in CakePHP's TranslateBehavior?

我有一个带有TranslateBehavior的模型附加到它,我想知道是否有一种方法可以只删除特定项目的一个翻译,并且只使用标准模型方法(=不显式地在i18n表上提供SQL查询,因为我想绝对独立于DB引擎),而不是将其设置为空白,而是真正删除。

简单的情况示例:
DB中有一篇文章,有英语和德语的翻译。有一天,编辑决定不提供德文版本的文章,并希望将其从数据库中删除(但英文版应该仍然可用)。现在出现了我上面写的问题。

提前感谢您的帮助

就目前而言,在检查afterSave回调行为类后,我只看到一些解决方案-使用核心模型I18nModel定义在cake/libs/model/behavior/translate.php(文件的底部)并使用delete方法手动设置通常由translateBehavior设置的所有条件。

I18nModel模型可按标准方式使用:
    var $uses = array('SomeModelUsingTranlateBehaviour','I18nModel');