社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Carl Meyer

Carl Meyer 最近创建的主题
Carl Meyer 最近回复了
16 年前
回复了 Carl Meyer 创建的主题 » 自定义/删除Django选择框空白选项

还没有测试过这个,但是基于读取Django的代码 here here 我认为它应该起作用:

class ThingForm(models.ModelForm):
  class Meta:
    model = Thing

  def __init__(self, *args, **kwargs):
    super(ThingForm, self).__init__(*args, **kwargs)
    self.fields['verb'].empty_label = None

编辑 这是 documented 但是,如果使用自动生成的模型窗体,则不一定知道要查找ModelChoiceField。

编辑 :正如jlpp在他的回答中指出的,这并不完整-您必须在更改空的_label属性后将选项重新分配给小部件。由于这有点老土,另一个可能更容易理解的选项就是覆盖整个ModelChoiceField:

class ThingForm(models.ModelForm):
  verb = ModelChoiceField(Verb.objects.all(), empty_label=None)

  class Meta:
    model = Thing
15 年前
回复了 Carl Meyer 创建的主题 » 为什么Django项目是python包?

项目的核心是settings.py和根urls.py。这两个模块都是Python模块,因此它们需要以某种方式导入。你 可以 将项目目录直接放在python路径上,这样可以将它们作为顶级模块导入,但这可能是更糟糕的做法。最好让项目成为一个包,并且设置和URL是其中的模块。