我想从模型中调用一个函数,例如: class ChannelStatus(models.Model): ………………………… ………………………… def get_related_deltas(self,epk): mystring = "" if not self.get_error_code_delta(epk): return mystring else: for i in self.get_listof_outage(): item = i.error_code.all() for x in item: if epk == x.id: mystring= mystring +" "+str(i.delta()) return mystring 而当我想从模板中调用这个:假设渲染时,我传递给channel_status_list channel_status_list = ChannelStatus.objects.all() {% for i in channel_status_list %} {{ i.get_related_deltas(3) }} {% endfor %} 这不起作用,我可以调用一个不消耗任何东西的函数,但是如果它有参数,它就不会find该做什么。 干杯
这是我的自定义filter: from django import template register = template.Library() @register.filter def replace(value, cherche, remplacement): return value.replace(cherche, remplacement) 这里是我尝试在我的模板文件中使用它导致错误的方法: {{ attr.name|replace:"_"," " }} {{ attr.name|replace:"_" " " }} {{ attr.name|replace:"_":" " }} {{ attr.name|replace:"cherche='_', remplacement=' '" }} 我看了一下django的文档和书,但是只用一个参数find了一个例子……甚至有可能吗?
我正在为一个用户创build一个小仪表板,允许他运行特定的工作。 我正在使用Django,因此我希望他能够单击链接来启动作业,然后将该页面返回给他,并显示作业正在运行的消息。 这项工作的结果稍后将通过电子邮件发送给他。 我相信我应该使用subprocess.Popen但我不确定这一点。 所以在伪代码,这是我想要做的: if job == 1: run script in background: /path/to/script.py return 'Job is running'
我有一个Django Form类定义喜欢这在Models : class AccountDetailsForm(forms.Form): … adminuser = forms.ModelChoiceField(queryset=User.objects.all()) 这工作正常,但它有一些限制,我似乎无法解决: (1)我想对查询集使用一个filter,基于一个variablesaccountid传递给窗体,如下所示: User.objects.filter(account=accountid) 这在模型中不起作用,因为accountid当然不能作为variables传递。 因此,查询集必须以某种方式在Views定义,但据我所知,它是Form类中的必需字段。 (2)我想使AccountDetailsForm的默认select在数据库中的一个对象,我可以在这样的Viewsselect: User.objects.filter(account=accountid).filter(primary_user=1) 我已经尝试指定adminuser作为窗体中的默认值(与其他标准窗体字段(如CharField )一起使用): adminuser = User.objects.filter(account=accountid).filter(primary_user=1) … form = AccountDetailsForm({'adminuser': adminuser}) return render_to_response('accounts/edit/accountdetails.html', {'form': form, 'account':account}) 但没有运气。 我应该使用除了ModelChoiceField以外的其他function吗? 谢谢。
我有一个奇怪的问题,我想添加一个全局查询使用上下文处理器。 这是我如何做到这一点: 在我的应用程序中,这样做了一个processor.py: from myproject.myapp.models import Foo def foos(request): return {'foos': Foo.objects.all()} 并在我的setting.py结尾添加了这个: TEMPLATE_CONTEXT_PROCESSORS = ('myapp.processor.foos',) 最后,我将这个观点传递给我: def index_view(request): return render_to_response('index.html', {}, context_instance=RequestContext(request)) 并在我的index.html模板: <select id="select_foo"> {% for foo in foos %} <option value="/{{ foo.slug }}">{{ foo.name }}</option> {% endfor %} </select> 最后是我的url: (r'^$', 'myapp.views.index_view'), 我的foos显示没有任何问题,但是我的media_url和其他上下文都没有了。 可能是什么问题
我正在使用线程本地来存储当前的用户和请求对象。 这样,我可以轻松地从程序中的任何地方访问请求(例如dynamic表单),而无需传递它们。 为了在一个中间件中实现线程本地存储,我在Django站点上跟随了一个教程: http : //code.djangoproject.com/wiki/CookBookThreadlocalsAndUser?version=18 这个文件已被修改,以避免这种技术: http : //code.djangoproject.com/wiki/CookBookThreadlocalsAndUser?version=20 从文章: 从devise的angular度来看,threadlocals本质上是全局variables,受到全局variables通常所需的可移植性和可预测性的所有常见问题的影响。 更重要的是,从安全angular度来看,threadlocals构成了巨大的风险。 通过提供公开其他线程状态的数据存储,您可以为Web服务器中的一个线程提供一种方法,以便可能修改系统中另一个线程的状态。 如果线程本地数据包含对用户或其他authentication相关数据的描述,那么可以将该数据用作授权访问未授权用户的攻击的基础,或暴露用户的私人细节。 虽然有可能build立一个对这种攻击是安全的线程本地系统,但是防御起来要容易得多,并且build立一个不受此类漏洞影响的系统。 我明白为什么全局variables可能是坏的,但在这种情况下,我在自己的服务器上运行我自己的代码,所以我不能看到两个全局variables构成什么危险。 有人可以解释涉及的安全问题吗? 我问过许多人,如果他们读了这篇文章,知道我在使用线程本地程序,他们将如何破解我的应用程序,但没有人能够告诉我。 我开始怀疑,这是一个热衷于明确地通过对象的纯粹主义分子所持有的观点。
在Django中,您可以指定如下关系: author = ForeignKey('Person') 然后在内部它必须将string“Person”转换成模型Person 。 function在哪里呢? 我想用它,但我找不到它。
好的,我看到很多这些错误。 我已经尝试了所有我知道要做的事情,但还没有弄明白。 我正在开发运行python 2.5和Django 1.3的开发服务器。 解压缩tar.gz下载后,使用python setup.py install安装Django 1.3。 一切运作良好,我很less有需要运行manage.py但试图使用新的静态文件应用程序,并遇到问题。 python manage.py collectstatic Traceback (most recent call last): File "manage.py", line 2, in <module> from django.core.management import execute_manager ImportError: No module named core.management 好的,所以我有PATH问题。 从Django安装我仔细检查我的site-packages目录。 python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()" /usr/lib/python2.5/site-packages 好的,让我们看看我有什么,echo $ PYTHON_PATH是空的,所以我设置它 export PYTHON_PATH=/usr/lib/python2.5/site-packages/django 仍然没有运气。 让我们来看看sys.path有什么要说的 >>> import sys >>> […]
我有两个模型A和B 所有的B对象都有一个到A对象的外键。 给定一组A对象,是否有使用ORM来获取包含为每个A对象创build的最近对象的一组B对象 这是一个简单的例子: Class Bakery(models.Model): town = models.CharField() Class Cake(models.Model): bakery = models.ForeignKey(Bakery) baked_at = models.DateTimeField() 所以我正在寻找一个查询,返回美国Anytown每家面包店出炉的最新蛋糕。
我真的没有得到这个,所以如果有人可以解释这是如何工作,我非常感激。 我有两个应用程序,帐户和主题…这是我的设置列表: INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'accounts', 'themes', ) 在帐户中,我正在尝试这样做: from themes.models import Theme class Account(models.Model): ACTIVE_STATUS = 1 DEACTIVE_STATUS = 2 ARCHIVE_STATUS = 3 STATUS_CHOICES = ( (ACTIVE_STATUS, ('Active')), (DEACTIVE_STATUS, ('Deactive')), (ARCHIVE_STATUS, ('Archived')), ) id = models.AutoField(primary_key=True) name = models.CharField(max_length=250) slug = models.SlugField(unique=True, verbose_name='URL Slug') status = models.IntegerField(choices=STATUS_CHOICES, default=ACTIVE_STATUS, max_length=1) owner […]