小编She*_*009的帖子

Django:想要将空字段显示为空白而不显示无

我有一个名为client_details.html的模板,显示user,notedatetime.现在有时,客户端可能没有用户,注释和日期时间的条目.None如果这些字段为空,则显示我的程序将执行的操作.我不希望显示无.如果某个字段没有值,我不希望看到任何值,例如,如果可能,请将其留空,而不是显示无.

views.py

@login_required
def get_client(request, client_id = 0):
    client = None
    try:
        client = models.Client.objects.get(pk = client_id)
    except:
        pass
    return render_to_response('client_details.html', {'client':client}, context_instance = RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

模板

{{client.datetime}}<br/> 
{{client.datetime.time}}<br/>  
{{client.user}}<br/>
{{client.note}}<br/>
Run Code Online (Sandbox Code Playgroud)

python django null

17
推荐指数
3
解决办法
1万
查看次数

执行dumpdata时,疑难解答"错误:无法序列化数据库:"

由于某种原因,今天我无法使用python manage.py dumpdata或从可以下载mysql文件的链接转储我的数据库.

我尝试使用python manage.py dumpdata --traceback,这是我的信息.

Traceback (most recent call last):
  File "manage.py", line 11, in <module>
    execute_manager(settings)
  File "/usr/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
  File "/usr/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/local/lib/python2.7/site-packages/django/core/management/base.py", line 191, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/usr/local/lib/python2.7/site-packages/django/core/management/base.py", line 220, in execute
    output = self.handle(*args, **options)
  File "/usr/local/lib/python2.7/site-packages/django/core/management/commands/dumpdata.py", line 114, in handle
    use_natural_keys=use_natural_keys)
  File "/usr/local/lib/python2.7/site-packages/django/core/serializers/__init__.py", line 91, in serialize
    s.serialize(queryset, **options)
  File "/usr/local/lib/python2.7/site-packages/django/core/serializers/base.py", line 48, in serialize
    self.handle_fk_field(obj, field)
  File "/usr/local/lib/python2.7/site-packages/django/core/serializers/python.py", …
Run Code Online (Sandbox Code Playgroud)

mysql database django models

9
推荐指数
1
解决办法
3675
查看次数

使用datetime与Django中的日期进行比较

我在Django中有一个关于如何比较日期以解决一些解决方案的问题.例如,我的models.py中有一个日期字段,如下所示.

class Invoice(models.Model):
    payment_date = models.DateTimeField()
Run Code Online (Sandbox Code Playgroud)

我想要做的是询问是否可以将datetime.now与DateTimeField进行比较.例如,如果我有一个付款日期列表,我想现在与datetime进行比较.付款延迟的payment_date显示为欠款.否则,它的值为零.

以下是我的观点,以显示最新情况.到目前为止我已经尝试了但是我得到的pay_date值为0,晚于付款日期.

编辑这里是我最新的观点.有趣的是,我似乎得到所有结果的欠款= invoice_gross - 不像之前我​​得到全0.所以它仍然无法正常工作.

@login_required
def homepage(request):
    invoices_list = Invoice.objects.all()
    invoice_name = invoices_list[0].client_contract_number.client_number.name
    invoice_gross = invoices_list[0].invoice_gross
    payment_date = invoices_list[0].payment_date
    if payment_date <= datetime.now():
        owing = invoice_gross
        if payment_date > datetime.now():
            owing = 0
    return render_to_response(('index.html', locals()), {'invoices_list': invoices_list ,'invoice_name':invoice_name, 'invoice_gross':invoice_gross,'payment_date':payment_date,'owing':owing}, context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

哦,我的桌子基本上都是这样做的.

ID  Owing
1   100   (All the same value)
2   100
3   100
.   .
.   .
.   .
Run Code Online (Sandbox Code Playgroud)

django datetime views models datefield

7
推荐指数
2
解决办法
3万
查看次数

Django:想按日期时间排序评论

我在视图中有评论,我想用列表顶部的最新评论对它们进行排序.但它不起作用.我收到这个错误.

Caught TypeError while rendering: 'Comment' object is not iterable

我不太确定导致这个问题的原因.这是我的观点和模型可能会有所帮助.

查看

def home(request):
    comments = Comment.objects.latest('datetime')
    return render_to_response('home.html', {'comments':comments}, context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

楷模

class Comment(models.Model):
    name = models.CharField(max_length = 40)
    datetime = models.DateTimeField(default=datetime.now)
    note = models.TextField()
    def __unicode__(self):
        return unicode(self.name)
Run Code Online (Sandbox Code Playgroud)

python django datetime

7
推荐指数
2
解决办法
1万
查看次数

Django与比萨的pdf问题

我想使用pisa为pdf文件生成一个html模板.我相信我拥有我需要的所有包裹,但我似乎遇到了问题.以下是我到目前为止的观点.

编辑:这是我最新的网址,视图和模板.

url.py

(r'^index/render_pdf/(?P<id>\d+)/$', render_pdf),
Run Code Online (Sandbox Code Playgroud)

views.py

def fetch_resources(uri, rel):
    path = os.path.join(settings.MEDIA_ROOT, uri.replace(settings.MEDIA_URL, ""))
    return path

def render_pdf (html, id):
    invoice_items_list = Invoice_Items.objects.filter(pk=id)
    result = StringIO.StringIO()
    pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("ISO-8859-1")), dest=result, link_callback=fetch_resources)
    return result
Run Code Online (Sandbox Code Playgroud)

在模板中,我有这个标签.

<a href="{% url c2duo.views.render_pdf invoices.pk %}">
Run Code Online (Sandbox Code Playgroud)

python pdf django export views

5
推荐指数
1
解决办法
1586
查看次数

Django想要打印今天的日期和时间

我想打印某种时间戳或某种功能来告诉它在模板中的日期和时间.在我看来,我有

time = datetime.now()
Run Code Online (Sandbox Code Playgroud)

在我的模板中我有

{{time}}
Run Code Online (Sandbox Code Playgroud)

所有这一切都打印出一个<type 'datetime.date'>对象.

python django datetime views date

5
推荐指数
2
解决办法
3万
查看次数

Django表单想要自动保存用户,客户端和日期时间

我需要一些帮助.

在我的models.py中,我有一个Note表.我想要对此表做的是创建一个表单,用户可以在文本字段中为特定客户端输入一些注释.

models.py

class Note(models.Model):
    client = models.ForeignKey(Client)
    datetime = models.DateTimeField(default=datetime.now)
    user  = models.ForeignKey(User)
    note = models.TextField()

    def __unicode__(self):
        return unicode(self.user)
Run Code Online (Sandbox Code Playgroud)

现在,当用户输入注释时,他们应该看到注释文本字段.表单提交后,表单应自动将日期+时间保存到时间和日期.我好像在用户字段.提交表单后,经过身份验证的用户应自动保存.我不确定你怎么能这样做.我也想自动保存客户端,以便您可以访问客户端页面(r'^clients/(?P<client_id>\d+)/$', views.get_client),从该客户端自动保存.

这是我在forms.py中写的内容

forms.py

class NoteForm(forms.ModelForm):
    class Meta:
        model = models.Note
        exclude = ('client','user','datetime')
Run Code Online (Sandbox Code Playgroud)

在这里我的观点也是如此.

Views.py

def add_notes(request, client_id):
    client = models.Client.objects.get(pk = client_id)
    notes = client.note_set.all()
    if request.method == 'POST':
        form = forms.NoteForm(request.POST)
        if form.is_valid():
            form.save(True)
            request.user.message_set.create(message = "Note is successfully added.")
            return HttpResponse("<script language=\"javascript\" type=\"text/javascript\">window.opener.location = window.opener.location; window.close();</script>")
    else:
        form = forms.NoteForm()
    return …
Run Code Online (Sandbox Code Playgroud)

python forms django autosave

5
推荐指数
2
解决办法
4090
查看次数

想要将背景图像放在中间位置

您好我的登录页面上有一个背景图片.目前图像居中但不按照我想要的方式居中.我想要它,所以图像总是居中在屏幕中间.当然,我的图像居中但位于页面顶部.图像需要位于屏幕中间,并保持居中.

login.html
 <body style="background-image: url({{MEDIA_URL}}/admin_media/img/admin/bigstock_Photo_Showing_Financial_Growth_1339836.jpg); background-position: 50% 50%; background-repeat:no-repeat;">
Run Code Online (Sandbox Code Playgroud)

html css position css-position background-image

5
推荐指数
1
解决办法
4万
查看次数

Django help_text

我想在这个表格中加上一些帮助文本.

class ItemForm(forms.ModelForm):
      alternative_id = forms.CharField(max_length = 60, required = False, help_text = 'Valid wildcard search is in the format *XX, *XX*, XX*')
Run Code Online (Sandbox Code Playgroud)

但它不会出现在页面上.是因为我可能需要某处的模板标签吗?

编辑:我在我的模板中写了这个.

<div id="location_header">Search for Items</div>
<div id="form_container">
<form action="." method="post">
        <fieldset class="model">
                {{ form.as_p }}
                {{ alternative_id.help_text }}
        </fieldset>
        <div id="form_footer">
                <input type="submit" value="Search" >
        </div>

</form>
</div>
Run Code Online (Sandbox Code Playgroud)

帮助文本仍然不会出现.有没有办法写一个帮助文本,同时允许django生成一个表单?

django django-templates django-forms

4
推荐指数
2
解决办法
2万
查看次数

Django:编写一个视图来删除带有复选框的项目

我需要帮助编写一个获取POST数据的视图,然后找出已经检查了哪些复选框,然后从id匹配的数据库中删除项目.最初,这是一个复选框问题.在编辑订单表单中,有一个项目列表.现在我可以使用一些javascript删除该项目,但它没有得到保存,因为我需要从我的数据库完全删除它.我尝试使用我的编辑订单视图使用delete()删除项目,但这不起作用.一定有别的我做错了,但我不知道是什么.

delete_item = request.POST.get('delete_item', None)
    if request.method == 'POST':
        form = forms.OrderForm(request.POST, instance = order)
        if form.is_valid() and save_item is not None:
            form.save(True)
            request.user.message_set.create(message = "The order has been updated successfully.")
            return HttpResponse("<script language=\"javascript\" type=\"text/javascript\">window.opener.location = window.opener.location; window.close();</script>")

        if status is not None and contact is not None and save_status is not None and delete_item is not None:
            try:
                for id in status_items:
                    item = models.StorageItem.objects.get(pk = id)
                    delete = item
                    delete.delete()
                    current_status = models.ItemStatusHistory(item = item, contact = contact, …
Run Code Online (Sandbox Code Playgroud)

html python django checkbox django-forms

3
推荐指数
1
解决办法
5719
查看次数