小编j_s*_*syk的帖子

如何将django调试工具栏设置为仅适用于某些用户?

马上:是的我知道INTERNAL_IPS.

我即将在工作集成和测试中打开我的django应用程序.我知道会有调试和大量的修改和/或优化,所以我很想拥有Django调试工具栏.但是,我宁愿不为我的所有同事(他们是'客户')提供帮助.

INTERNAL_IP设置对我不起作用的原因(顺便说一句:我的开发计算机上有静态IP)是我使用Nginx作为反向代理并与Gunicorn一起服务.由于反向代理的,使用127.0.0.1的internal_ip显示DjDT到网络上的任何一台计算机,并使用该IP是我已经能够看到它自己的唯一方式.

我正在寻找的是获取我的IP或我的登录名是唯一一个访问工具栏的方法.我曾经看到一个关于用户名限制访问的帖子,但我找不到它...

作为一个侧面问题 - 任何人都知道为什么工具栏不能在IE中呈现?对我而言,它只是在页面底部显示为表格.

django django-debug-toolbar

30
推荐指数
2
解决办法
5843
查看次数

Html:<a>和<p>标签的正确顺序是什么?

根据标准,以下哪一项(如果有的话)是正确的?

<!-- Do the links surround the target link object -->
<a href=''><p>Link Description</p></a>
<!-- or does the object type encapsulate the link-->
<p><a href=''>Link Description</a></p>
Run Code Online (Sandbox Code Playgroud)

我知道它们的功能相同,但这是一个最佳实践/标准问题.这也适用于ul/ol.

我认为有利于<a>内部标签的唯一原因是:

<p>This is a longer sentence with a <a href=''>short link here</a></p>

谢谢!

html anchor

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

Django会话cookie和多个端口上的站点

我使用gunicornnginx在一台服务器上运行多个Django项目.目前,它们均配置为使用nginx中的server指令在同一IP地址的唯一端口上运行.这一切都很好.

...
server {
    listen 81;
    server_name my.ip.x.x;
    ... #static hosting and reverse proxy to site1
}
server {
    listen 84;
    server_name my.ip.x.x;
    ... #static hosting and reverse proxy to site2
}
...
Run Code Online (Sandbox Code Playgroud)

当我在2个标签中打开2个不同的项目时,我遇到了一个问题,我意识到我无法同时登录这两个站点(都使用内置的Django User模型和auth).在检查我的浏览器中保存的cookie时,我意识到cookie只绑定了域名(在我的情况下只是一个IP地址)并且它不包括端口.

在第二个网站上,我尝试更改SESSION_COOKIE_NAMESESSION_COOKIE_DOMAIN,但它似乎无法正常工作,并且使用这些当前设置我甚至无法登录.

SESSION_COOKIE_DOMAIN = 'my.ip.x.x:84'  #solution is to leave this as default
SESSION_COOKIE_NAME = 'site2'           #just using this works 
SESSION_COOKIE_PATH = '/'               #solution is to leave this as default

#site1 is using all default values for these
Run Code Online (Sandbox Code Playgroud)

如何为两个独立工作的网站获取Cookie需要做什么?

django cookies

12
推荐指数
1
解决办法
2971
查看次数

Django-mptt和多个父母?

在这个问题上,我一直在桌子上撞了几个星期,所以我觉得可能是时候寻求帮助了.

我正在尝试实现一个数据库结构,它具有程序集部件的分层数据.我的主要问题在于尝试将一个"子组件"分配给另一个"组件"/树.参考下面的示例树 - 我在创建和使用程序集1和2时没有任何问题.但是当我进行程序集3时,当我调用子程序集时,我得到多个对象返回错误(我根据我的方式理解)尝试).

assembly 1:    assembly 2:     assembly 3:
1.1            2.1             2.1
- 1.1.1        - 2.1.1         - 2.1.1
1.2            2.2             1.2
- 1.2.1        - 2.2.1         - 1.2.1               
Run Code Online (Sandbox Code Playgroud)

这是我一直在尝试的模型:

#models.py snippet
class Part(models.Model):
        part_name = models.CharField(max_length=30, primary_key=True)
        description = models.TextField(max_length=500, blank=True, null=True)
        revision = models.CharField(max_length=10, blank=True, null=True)

        def __unicode__(self):
                return u'%s' % (self.part_name)

class Assembly(MPTTModel):
        name = models.ForeignKey(Part)
        parent = models.ForeignKey('self', null=True, blank=True, related_name='children')

        def __unicode__(self):
                return u'%s' % (self.name)

#views.py snippet
def assembly_details(request, assembly_name):
        context_instance=RequestContext(request)
        assembly = Assembly.objects.get(name=assembly_name)
        descendants_list …
Run Code Online (Sandbox Code Playgroud)

django django-models django-mptt

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

将嵌套字典转换为列表

我知道有很多词典可以在这里列出问题,但我找不到我需要的信息,所以我要问一个新的问题.

一些背景:我正在为我的模型使用分层包,并且生成树结构的内置函数输出一个嵌套循环来指示父项,子项等.我的目标是将逻辑保留在视图中并输出列表以便我可以简单地在我的模板中循环它.

这是我的数据,在树形结构中:

1
-1.1
--1.1.1
---1.1.1.1
--1.1.2
-1.2
--1.2.1
--1.2.2
-1.3
Run Code Online (Sandbox Code Playgroud)

这是我得到的嵌套字典

{
 <Part: 1.1>:
 {
   <Part: 1.1.1>:
     {
       <Part: 1.1.1.1>: {}
     }, 
   <Part: 1.1.2>: {}
 },
 <Part: 1.2>: 
 {
   <Part: 1.2.1>: {},
   <Part: 1.2.2>: {}
 }, 
 <Part: 1.3>: {}
}
Run Code Online (Sandbox Code Playgroud)

或者如果你不喜欢我试图分解它的方式,这就是我在一行中得到的:

{<Part: 1.1>: {<Part: 1.1.1>: {<Part: 1.1.1.1>: {}}, <Part: 1.1.2>: {}}, <Part: 1.2>: {<Part: 1.2.1>: {}, <Part: 1.2.2>: {}}, <Part: 1.3>: {}}
Run Code Online (Sandbox Code Playgroud)

我想要的是:

[<Part: 1.1>, <Part: 1.1.1>, <Part: 1.1.1.1>, <Part: 1.1.2>, <Part: 1.2>, <Part: 1.2.2>, <Part: 1.2.1>, <Part: …
Run Code Online (Sandbox Code Playgroud)

python django django-templates django-views

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

将消息从一台IMAP服务器移动到另一台IMAP服务器的脚本

我们的办公室使用2台IMAP服务器发送电子邮件,其中一台是传入服务器并保存最近的电子邮件,另一台是存档服务器。我们主要使用Outlook 2010,当前的过程是定期将已发送的邮件从传入服务器拖动到存档中。

今天,我被要求研究编写脚本,该脚本将定期(可能使用crontab)捕获所有已发送的消息并将其移动到存档中。

我研究了一些SSL或telnet实例来访问服务器并四处摸索。但是我不知道编写此脚本或如何在IMAP环境中跨服务器移动文件的最佳方法。

做到这一点的最佳方法是什么?我宁愿仅从舒适度的角度使用Python,但是如果已经存在另一种语言的解决方案,我可以解决。


更新:

好的,这是一些代码。当前,它可以很好地复制消息,但是,它将复制存档服务器上的现有消息。

import imaplib
import sys

#copy from
f_server = 'some.secret.ip.address'
f_username = 'j@example.com'
f_password = 'password'
f_box_name = 'Sent Messages'

#copy to
t_server = 'archive.server.i.p'
t_username = 'username'
t_password = 'password'
t_box_name = 'test'

To = imaplib.IMAP4(t_server) 
To.login(t_username, t_password)
print 'Logged into mail server'

From = imaplib.IMAP4(f_server)
From.login(f_username, f_password)
print 'Logged into archive'

From.select(f_box_name)  #open box which will have its contents copied
print 'Fetching messages...'
typ, data = From.search(None, 'ALL')  #get all messages in …
Run Code Online (Sandbox Code Playgroud)

python email imap mail-server imaplib

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

Django - 遗留数据库和'id'字段的问题

我正在将一个来自php应用程序的MySQL数据库集成到一个新的Django项目中.Inspectdb运行良好,我只需要将几个字段更改为ForeignKeys,现在所有的读取和编辑当前数据都运行良好.

问题是当我尝试创建一个新条目时,我得到了错误"Field 'id' doesn't have a default value".回溯从form.save()调用开始,异常来自MySQL游标.在大多数情况下,列被命名,id但在一种情况下,它是一个命名值:

class ModelOne(models.Model): #normal "id" named pk 
    id = models.AutoField(primary_key=True, db_column='id', default=None)
    other_fields = ...

class ModelTwo(models.Model): #specific pk
    named_pk = models.AutoField(primary_key=True, db_column='named_pk',
                                default=None)
    other_fields = ...
Run Code Online (Sandbox Code Playgroud)

对于ModelTwo,当我发布一个有效的表单时,我收到了错误,但是如果我回到我的数据列表,则会出现新项目!在我检查了idshell中的最新值之后,我可以看到它们正在递增.

但对于ModelOne(仅使用id),错误仍会显示,并且pk变为2147483647(最大值),后续保存因重复ID而失败.(下一个最高PK只有62158)

我需要做些什么才能使这些id字段正常工作?


更新:仍然没有运气解决这个问题.考虑转储数据并将其导入到新建的Django表中.仍在寻找这个问题的解决方案.


update2:来自db shell的信息

ModelOne:

+-------------+--------------+-------+------+---------+-----------------+
| Field       | Type         | Null  | Key  | Default | Extra           |
| id          | int(11)      | NO    | PRI  | NULL    | auto_increment  | …
Run Code Online (Sandbox Code Playgroud)

django django-models django-database

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

Django-使用自动字段和外键填充“更新/编辑”表单

我是 Django 的新手,我正在创建一个应用程序来为我的公司创建和显示员工数据。目前模型,新员工表格,员工表显示,登录/注销,所有工作。我正在编辑当前列表。我将鼠标悬停在行链接上以将 pk (employeeid) 传递到 url 上,并且表单正在正确填充 - 除了 manytomanyfields 没有填充,并且 pk 正在增加,导致重复条目(除了所做的任何数据更改)。

我只会放入代码示例,因为模型/表单总共有 35 个字段,这使得代码非常长,就像我手动处理表单字段的方式(以实现更漂亮的格式)。

#view.py  #SEE EDIT BELOW FOR CORRECT METHOD
@login_required
def employee_details(request, empid): #empid passed through URL/link
    obj_list = Employee.objects.all()
    e = Employee.objects.filter(pk=int(empid)).values()[0]
    form = EmployeeForm(e)
    context_instance=RequestContext(request) #I seem to always need this for {%extend "base.html" %} to work correctly
        return render_to_response('employee_create.html', locals(), context_instance,)

#URLconf 
    (r'^employee/(?P<empid>\d+)/$', employee_details),

# snippets of employee_create.html. The same template used for create and update/edit, may be a source of problems, …
Run Code Online (Sandbox Code Playgroud)

django populate django-forms

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

Django-如何将隐藏字段添加到表单集中并填充它们?

我正在处理一个带有 RSVP 表单的项目。现在我可以处理他们的基本信息,包括他们带来的额外客人的数量。然后,该数字用于在下一页的表单集中填充 X 个字段,该表单只要求输入客人姓名和评论。

我希望能够做的是在来宾姓名的表单集中添加一个隐藏字段,其中包含将他们注册为即将到来的人的姓名。

我已经在传递会话数据以使用注册来宾的信息预填充第一个来宾名称,并且我定义了一个可以填充隐藏字段的会话变量。我只需要知道如何将字段添加到表单集中。

从 django.db 导入模型

#models.py
class Guest(models.Model):
    ATTENDING_CHOICES = (
        (u'Yes', u'Yes'),
        (u'No', u'No'),
        (u'Maybe', u'Maybe?')
    )

    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    email = models.EmailField(max_length=50)
    attending = models.CharField(max_length=15, choices=ATTENDING_CHOICES)
    no_of_guests = models.IntegerField(verbose_name='Total # of guests', max_length=3)
    notes = models.TextField(null=True, blank=True)
    def __unicode__(self):
        return u'%s, %s - %s' % (self.last_name, self.first_name, self.email)

class GuestsAttending(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    comments = models.CharField(null=True, blank=True, max_length=100)
    #This is the field that I would like to …
Run Code Online (Sandbox Code Playgroud)

django django-models django-forms

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

Django ModelForm 与 Form

大家好,
我想知道 ModelForm 是否比 Form 更好地为普通用户编写表单,该用户具有复杂的表单验证和比 Model 更多的字段。哪一个更专业?

谢谢

django django-models django-forms

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