models.py的片段
class Hardware_type(models.Model):
type = models.CharField(blank = False, max_length = 50, verbose_name="Type")
description = models.TextField(blank = True, verbose_name="Description")
slug = models.SlugField(unique = True, max_length = 255, verbose_name = "Slug")
class Software_type(models.Model):
type = models.CharField(blank = False, max_length = 50, verbose_name="Type")
description = models.TextField(blank = True, verbose_name="Description")
slug = models.SlugField(unique = True, max_length = 255, verbose_name = "Slug")
Run Code Online (Sandbox Code Playgroud)
现在
>>> sw = Software_type.objects.get(slug='unix')
>>> sw
<Software_type: Unix>
>>> hw = Hardware_type.objects.get(slug='printer')
Traceback (most recent call last):
File "<console>", line 1, in …Run Code Online (Sandbox Code Playgroud) 我按照http://docs.djangoproject.com/en/1.2/ref/contrib/sitemaps/上的说明进行操作
我从django.contrib导入站点地图添加此行
(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps})
Run Code Online (Sandbox Code Playgroud)
到URLconf
使用以下内容创建文件sitemap.py:
from django.contrib.sitemaps import Sitemap
from blog.models import Post
class BlogSitemap(Sitemap):
changefreq = 'monthly'
priority = 0.5
def items(self):
return Post.objects.all()
def lastmod(self, obj):
return obj.date
Run Code Online (Sandbox Code Playgroud)
在这个地址 http://127.0.0.1:8000/sitemap.xml我收到一个错误:
Traceback:
File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
100. response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.7/site-packages/django/contrib/sitemaps/views.py" in sitemap
33. maps = sitemaps.values()
Exception Type: AttributeError at /sitemap.xml
Exception Value: 'module' object has no attribute 'values'
Run Code Online (Sandbox Code Playgroud)
有人可以帮帮我吗?
我知道这object_id比外键过滤更有效,object.id
但是这条规则适用于外键过滤吗?
是
Model.objects.filter(author_id=author_obj.id)
Run Code Online (Sandbox Code Playgroud)
或者
Model.objects.filter(author_id=author_id)
Run Code Online (Sandbox Code Playgroud)
比更有效率
Model.objects.filter(author=author_obj)
Run Code Online (Sandbox Code Playgroud) 如何正确编写返回类型被装饰器修改的函数的类型?
简单的例子:
def example_decorator(fn):
def wrapper(data):
res = fn(data)
return ', '.join(res)
return wrapper
@example_decorator
def func(data: list): # -> ???? str ? list ?
new_data = data
new_data.append('XYZ')
return new_data
# When we type func -> list
def test() -> str:
result = func(['ABC', 'EFG'])
print(type(result)) # <class 'str'>
return result # Incompatible return type [7]: Expected str but got list.
test()
Run Code Online (Sandbox Code Playgroud) 我的问题是:我应该将模板上下文处理器用于类别列表等全局变量吗?
我有globs.py
from news.models import Category
def globs(request):
cats = Category.objects.all()
return {'cats': cats}
Run Code Online (Sandbox Code Playgroud)
并在settings.py中
TEMPLATE_CONTEXT_PROCESSORS = ("django.core.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"globs.globs",)
Run Code Online (Sandbox Code Playgroud)
当我在模板'cats'中使用它在开发人员服务器上工作正常.
在我的托管上我有一个问题:导入请求处理器模块globs时出错:"没有名为globs的模块"
我可以为全局变量使用其他东西吗?
我在Django中创建了一个站点,这是我的问题如何制作这样的东西:
在init上(例如,有人运行"syncdb"?)我需要创建一个具有权限的组,并将超级用户配置文件从User扩展到UserProfile(当用户注册它不是问题但是第一个管理员/超级用户在创建应用程序时自动处理)
因为,安装后您需要在管理面板中手动执行这些操作.
抱歉我的英语,很难向我解释这个问题.我希望你明白.
我有类似的东西
from django.forms import ModelForm
from django.shortcuts import render_to_response
class ArticleForm(ModelForm):
class Meta:
model = Article
def articl(request):
tykul = ArticleForm()
return render_to_response('test.html',{'tykul':tykul.as_ul()})
Run Code Online (Sandbox Code Playgroud)
这是一个结果 - 名称'Article'没有定义
同样的f.ex. for model = Book和其他来自ModelForm
为什么?
嗨,我开始学习Django.
我有一个简单的菜单列表
{% block menu %}
<ul>
{% for item in list %}
<li><a href="{{item}}/">{{ item }}</a></li>
{% endfor %}
</ul>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
和列表f.ex.
MENU = ['Home','Contact','About']
Run Code Online (Sandbox Code Playgroud)
当我按联系人然后转到地址127.0.0.1:8000/Contact与相同的模板,但如果我再次点击联系我我找不到页面127.0.0.1:8000/Contact/Contact
我该怎么办?
对不起我的英语不好.
这是站点代码的片段
<td class='vcard' id='results100212571'>
<h2 class="custom_seeMore">
<a class="fn openPreview" href="link.html">Hotel Name<span class="seeMore">See More...</span></a>
</h2>
<div class='clearer'></div>
<div class='adr'>
<span class='postal-code'>00000</span>
<span class='locality'>City</span>
<span class='street-address'>Address</span>
</div>
<p class="tel">Phone number</p>
Run Code Online (Sandbox Code Playgroud)
我试着解析它
for element in BeautifulSoup(page).findAll('td'):
if element.find('a', {'class' : 'fn openPreview'}):
print element.find('a', {'class' : 'fn openPreview'}).string
if element.find('span', {'class' : 'postal-code'}):
print element.find('span', {'class' : 'postal-code'}).string
if element.find('span', {'class' : 'locality'}):
print element.find('span', {'class' : 'locality'}).string
if element.find('span', {'class' : 'street-address'}):
print element.find('span', {'class' : 'street-address'}).string
if element.find('p', {'class' : 'tel'}): …Run Code Online (Sandbox Code Playgroud) 在模型中我有开始和结束日期.如何获得开始和结束日期的所有元素是不同的.
>>> Entry.objects.exclude(start = end)
>>> NameError: name 'end' is not defined
Run Code Online (Sandbox Code Playgroud)
我不知道请帮忙.
django ×8
python ×6
django-forms ×1
html-parsing ×1
menu ×1
mypy ×1
pyre-check ×1
python-3.x ×1
sitemap ×1