擅长:python、mysql、java
<p>问题1:</p>
<blockquote>
<p>I want to be able to access the test1-info attribute just like i would
be able to access the name1-max_length attribute.</p>
</blockquote>
<p>是的,您可以通过<code>ModelField.model_field.info</code>访问您的<code>info</code>属性。
你可以看到下面的例子。在</p>
<p>你的最终目标2:</p>
<p>我认为您可以自定义自己的元数据类。在</p>
<pre><code>from rest_framework.metadata import SimpleMetadata
from rest_framework.serializers import ModelField
from pbweb.models import RsTestField
class MyMetadata(SimpleMetadata):
def get_field_info(self, field):
field_info = super(MyMetadata, self).get_field_info(field)
# I will add the info field only for RsTestField-ModelField
if isinstance(field, ModelField) and isinstance(field.model_field, RsTestField):
# access your info attribute HERE
field_info['info'] = field.model_field.info
return field_info
</code></pre>
<p>而且,别忘了配置您的<code>DEFAULT_METADATA_CLASS</code>设置</p>
<p>在设置.py在</p>
^{pr2}$