我希望能在这个问题上寻求一些帮助.我还在学习Django(和Python)并遇到这个我无法找到答案的特殊问题.我创建了一个名为"新闻"的新应用程序,并为应用程序设置了模型.使用Admin界面我创建了一些数据.从我的"Pages"应用程序,我正在尝试导入News_Article类并获取错误No module named News.models.
我很难看到这里出了什么问题.
任何帮助将不胜感激.
DIR结构
Bolton_GC [Folder]
- Bolton_GC [Folder]
- News [Folder]
- Migrations [Folder]
- __init__.py
- __init__.pyc
- admin.py
- admin.pyc
- models.py
- models.pyc
- tests.py
- views.py
- Pages [Folder]
- Migrations [Folder]
- __init__.py
- __init__.pyc
- admin.py
- admin.pyc
- models.py
- models.pyc
- tests.py
- views.py
- views.pyc
- static [Folder]
- templates [Folder]
- __init__.py
- __init__.pyc
- settings.py
- settings.pyc
- urls.py
- urls.pyc
- …Run Code Online (Sandbox Code Playgroud) 我害怕的另一个基本问题是我正在努力.我已经浏览了各种Django文档页面并搜索了这个网站.我在这里找到的唯一一件事是在2013年,它建议设置一个自定义过滤器模板.
无论如何,我正在尝试生成自己的表单,而不是使用Django自己的方式通过{{form}}生成它.这很简单,所以我可以控制表单的呈现方式.
我已经找到了各种方法来访问所需的信息,例如(在我的for form for form循环中);
我正在尝试识别项目类型,以便我可以使用正确的输入类型,但是我正在努力锻炼item.xxxx应该是什么.由于这是通过{{form}}正确显示的,我假设这些信息在表单中的某处可用,只是努力找出如何访问它,以便我可以识别正确的输入类型.我正在手动执行此操作,因此我可以使用正确的Bootstrap样式来显示输入字段.
任何帮助将被赞赏(或只是指向正确的方向).我对此非常陌生,因此对我的基本问题表示道歉,如果不知道有人我就可以去问这些问题.
问候
韦恩
不确定你是否需要它,但这里有一些代码;
形成:
class NewsForm(ModelForm):
class Meta:
model = News_Article
exclude = ('news_datetime_submitted', 'news_yearmonth', )
labels = {
'news_title': _('Enter News Title'),
}
help_texts = {
'news_title': _('Enter a title to give a short description of what the news is.'),
}
error_messages = {
'news_title': {
'max_length': _("News title is too long."),
},
}
Run Code Online (Sandbox Code Playgroud)
查看(还没有在POST位上工作,这就是Django文档中的内容,POST是我接下来需要解决的问题)
def create(request, dataset):
if dataset not in ['news', 'announcement']:
return HttpResponseRedirect(reverse('pages'))
rDict = …Run Code Online (Sandbox Code Playgroud) 根据我读过的内容和这里的一些帖子(并阅读他们的解决方案),我认为我已经正确实现了这一点。看来我还没有完全掌握外键和 related_name 的一些东西。这是我的模型以及我为了访问链接的类而尝试执行的操作。
class Menu(models.Model):
menu_name = models.CharField(max_length=25, verbose_name="Menu Name")
urlconf_name = models.CharField(max_length=25, verbose_name="URLConf Name")
menu_position = models.IntegerField(verbose_name="Menu Position", unique=True)
has_sub_menu = models.BooleanField(default=False, verbose_name="Sub Menu Linked")
active = models.BooleanField(default=True, verbose_name="Menu Active")
def __str__(self):
return self.menu_name
class Sub_Menu(models.Model):
class Meta:
ordering = ['menu_position']
sub_name = models.CharField(max_length=25, verbose_name="Sub Menu Name")
urlconf_name = models.CharField(max_length=25, verbose_name="Sub Menu URLConf Name")
menu_position = models.IntegerField(verbose_name="Sub Menu Position")
menu_id = models.ForeignKey(Menu, related_name="submenu")
active = models.BooleanField(default=True, verbose_name="Menu Active")
def __str__(self):
return self.sub_name
Run Code Online (Sandbox Code Playgroud)
现在我想我可以简单地使用 some.submenu (即 related_name )访问链接数据,但它似乎不起作用。通过上面的代码,我已经尝试过;
the_menu = …Run Code Online (Sandbox Code Playgroud)