【发布时间】:2010-01-30 23:57:36
【问题描述】:
我以不同于显示格式的格式存储数据。
我已经在表单的 clean_weight() 方法中完成了表单到数据库的转换,这使我可以在保存数据之前访问正确的格式数据。
现在我假装在显示表单之前操纵实例权重,但我看不到在表单代码中执行此操作的好地方。
我知道有两种选择:
- 创建构造函数并在那里处理转换。这对我来说看起来不太好,因为一旦定义了构造函数,它就适用于所有可能的构造函数调用(不仅适用于实例 = 一个)并且仅适用于表单的 1 或 2 个字段,我更喜欢另一种解决方案。
- 不在表单代码中执行此操作,将其放在我使用的每个视图中,看起来不舒服,因为我需要在多个地方执行此操作,我需要从表单中删除 clean_weight 以保留它一致,所以我需要在我使用表单的每个视图中都进行这两种操作。
在这两个中,看起来更好的一个是构造函数,但对我来说很臭。
有什么提示吗?
【问题讨论】:
标签: django validation constructor django-forms