可能是下面的问题?看起来pip中有一个bug.我昨天使用brew安装了pip.在此之前,我已经安装了大多数python包$ python setup.py install
steves-MacBook-Pro:server steve$ pip -V
pip 1.4.1 from /Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg (python 2.7)
steves-MacBook-Pro:server steve$ pip list
altgraph (0.9)
bdist-mpkg (0.4.4)
...
...(a bunch of python packages omitted here for brevity)
...
...
requests (2.0.0)
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg/pip/basecommand.py", line 134, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg/pip/commands/list.py", line 80, in run
self.run_listing(options)
File "/Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg/pip/commands/list.py", line 127, in run_listing
self.output_package_listing(installed_packages)
File "/Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg/pip/commands/list.py", line 136, in output_package_listing
if dist_is_editable(dist):
File "/Library/Python/2.7/site-packages/pip-1.4.1-py2.7.egg/pip/util.py", line 347, in …Run Code Online (Sandbox Code Playgroud) 我在限制formset中的可选选项时遇到了问题.我有以下模型:员工,部门,项目,项目类型,成员资格和角色.员工可以在表单集中添加/删除他们为给定部门项目播放的角色,表单应该将可选项目限制为仅属于员工所属部门的项目.
楷模:
class Department(models.Model):
name = models.CharField(max_length=20)
def __unicode__(self):
return self.name
class Employee(models.Model):
fname = models.CharField(max_length=15)
department = models.ForeignKey(Department)
def __unicode__(self):
return self.fname
class Projecttype(models.Model):
name = models.CharField(max_length=20)
def __unicode__(self):
return self.name
class Project(models.Model):
projecttype = models.ForeignKey(Projecttype)
department = models.ForeignKey(Department)
members = models.ManyToManyField(Employee, through='Membership')
def __unicode__(self):
return "%s > %s" % (self.department, self.projecttype)
class Role(models.Model):
name = models.CharField(max_length=20)
def __unicode__(self):
return self.name
class Membership(models.Model):
project = models.ForeignKey(Project, null=True)
department = models.ForeignKey(Department)
employee = models.ForeignKey(Employee)
role = models.ManyToManyField(Role, blank=True, null=True)
class …Run Code Online (Sandbox Code Playgroud) 我有一个自定义表单,创建一个字段的隐藏输入:
class MPForm( forms.ModelForm ):
def __init__( self, *args, **kwargs ):
super(MPForm, self).__init__( *args, **kwargs )
self.fields['mp_e'].label = "" #the trick :)
class Meta:
model = MeasurementPoint
widgets = { 'mp_e': forms.HiddenInput() }
exclude = ('mp_order')
Run Code Online (Sandbox Code Playgroud)
我必须这个小技巧来"隐藏"标签,但我想要做的是将其从表单中删除.我创建这样的表单:
forms.MPForm()
Run Code Online (Sandbox Code Playgroud) 我切换到Django 1.7.当我为我的应用程序尝试makemigrations时,它会崩溃.崩溃报告是:
Migrations for 'roadmaps':
0001_initial.py:
- Create model DataQualityIssue
- Create model MonthlyChange
- Create model Product
- Create model ProductGroup
- Create model RecomendedStack
- Create model RecomendedStackMembership
- Create model RoadmapMarket
- Create model RoadmapUser
- Create model RoadmapVendor
- Create model SpecialEvent
- Create model TimelineEvent
- Create model UserStack
- Create model UserStackMembership
- Add field products to userstack
- Add field viewers to userstack
- Add field products to recomendedstack
- Add field product_group …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用argparse创建一个Django管理命令,但是每当我运行它时,它总是不会返回有效的选项,因为此消息来自manage.py:
class Command(BaseCommand):
def handle(self, *args, **options):
parser = argparse.ArgumentParser('Parsing arguments')
parser.add_argument('--max', type=float, store)
args = parser.parse_args(sys.argv[2:])
Run Code Online (Sandbox Code Playgroud)
将一些参数解析器与管理命令一起使用的正确方法是什么?
Python版本2.x.
我试图在允许用户查看特定用户设置页面之前检查某些条件.我试图使用user_passes_test装饰器来实现这一点.该函数位于基于类的视图中,如下所示.我正在使用方法装饰器来装饰视图中的get_initial函数.
class UserSettingsView(LoginRequiredMixin, FormView):
success_url = '.'
template_name = 'accts/usersettings.html'
def get_form_class(self):
if self.request.user.profile.is_student:
return form1
if self.request.user.profile.is_teacher:
return form2
if self.request.user.profile.is_parent:
return form3
@method_decorator(user_passes_test(test_settings, login_url='/accounts/usertype/'))
def get_initial(self):
if self.request.user.is_authenticated():
user_obj = get_user_model().objects.get(email=self.request.user.email)
if user_obj.profile.is_student:
return { ..........
...... ....
Run Code Online (Sandbox Code Playgroud)
以下是test_settings函数:
def test_settings(user):
print "I am in test settings"
if not (user.profile.is_student or user.profile.is_parent or user.profile.is_teacher):
return False
else:
return True
Run Code Online (Sandbox Code Playgroud)
我与装饰器得到以下错误.
File "../django/core/handlers/base.py", line 111, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "../django/views/generic/base.py", line 69, in view
return …Run Code Online (Sandbox Code Playgroud) 我将Django从1.8升级到1.9.之后,在Django管理员登录后,我在本地主机上收到此错误:
Referer checking failed - Referer is insecure while host is secure.
生产中的一切都很好.以下是我的settings.py文件的片段:
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True
Run Code Online (Sandbox Code Playgroud) 我最近更新到Django 1.9并尝试更新我的一些模型字段以使用内置的JSONField(我正在使用PostgreSQL 9.4.5).当我试图创建和更新我的对象的字段时,我遇到了一些特殊的东西.这是我的模型:
class Activity(models.Model):
activity_id = models.CharField(max_length=MAX_URL_LENGTH, db_index=True, unique=True)
my_data = JSONField(default=dict())
Run Code Online (Sandbox Code Playgroud)
这是我正在做的一个例子:
>>> from proj import models
>>> test, created = models.Activity.objects.get_or_create(activity_id="foo")
>>> created
True
>>> test.my_data['id'] = "foo"
>>> test.save()
>>> test
<Activity: {"id": "foo"}>
>>> test2, created2 = models.Activity.objects.get_or_create(activity_id="bar")
>>> created2
True
>>> test2
<Activity: {"id": "foo"}>
>>> test2.activity_id
'bar'
>>> test.activity_id
'foo'
Run Code Online (Sandbox Code Playgroud)
似乎每当我更新任何字段时my_data,我创建的下一个对象都会预先填充my_data来自前一个对象的数据.出现这种情况我是否使用get_or_create或只create.有人可以向我解释发生了什么吗?
我在网站上使用Django联系表格,允许访问者发送电子邮件.
目前,它的转义字符,所以单引号和双引号转换为'和"分别.如果引号显示为'和,则电子邮件将更易读".
我理解为什么我永远不应该将访问者的非转义输入放入我的网页,因为xss存在风险.电子邮件是否存在相同的风险,或者发送访问者未转义的输入是否可以?
请问我为什么在模板中显示“fav”时收到此错误消息
\n\nQuerySet object has no attribute game_id\nRun Code Online (Sandbox Code Playgroud)\n\n我尝试用 替换game_id,game但id_game什么也没有......
视图.py
\n\nfrom django.contrib import messages\nfrom django.conf import settings\nfrom django.contrib.auth.models import User\nfrom django.contrib.auth import authenticate, login, logout\nfrom django.shortcuts import render\nfrom start.models import Games, FavoriteGames\nimport urllib, json\n\ndef view_recap(request):\n if request.user.is_authenticated():\n username = request.user.username\n id_user = request.user.id\n fav = FavoriteGames.objects.filter(user_id=id_user).game_id\n return render(request, \'recap.html\', locals())\n else:\n from start.views import view_logoff\n from start.views import view_logon\n messages.add_message(request, messages.INFO, \'Vous devez \xc3\xaatre connect\xc3\xa9 pour acc\xc3\xa9der \xc3\xa0 cette page.\')\n …Run Code Online (Sandbox Code Playgroud) django ×9
python ×6
forms ×2
decorator ×1
django-1.11 ×1
django-1.9 ×1
django-csrf ×1
django-forms ×1
email ×1
json ×1
list ×1
options ×1
pip ×1
postgresql ×1
python-2.7 ×1
security ×1
widget ×1
xss ×1