我有一个水平行的div,都在同一个类中,如下所示:
1 2 3 4 5 6 7 8 9 10
我想要的是将css应用于其他所有奇数行,所以1,5,9等.
我试过了
.myClass:nth-child(n+4) and
.myClass:nth-child(odd),.myClass:nth-child(odd){
Run Code Online (Sandbox Code Playgroud)
但无法弄清楚:(
我有一个DateTimeField我的模特
如果我{{ model.datetime }}在模板中显示,我看到:
Aug. 13, 2013, 7:57 p.m.
Run Code Online (Sandbox Code Playgroud)
如果我{{ model.datetime.time }}在模板中显示,我看到:
2:57 am
Run Code Online (Sandbox Code Playgroud)
我希望它只显示7:57 p.m.如何让它使用正确的时区.我也尝试过,model.datetime.timetz但结果相同.
背景:我的Django应用程序位于预先存在的Postgresql数据库之上.该数据库具有非常复杂的触发器和约束网络.
问题:在Django Admin中,如果用户在保存时导致DatabaseError,我想以用户友好的格式向他们显示错误,类似于builtin forms.ValidationError.
示例(这不起作用,导致500)
def save_model(self, request, obj, form, change):
try:
obj.save()
except DatabaseError as e:
raise forms.ValidationError(e)
Run Code Online (Sandbox Code Playgroud)
预期结果:
在Admin中显示给用户," Database Error: ID 58574 - Price is outside customers requested range. Cannot add or update a child row: a foreign key constraint fails."
在将我的项目从django 1.5.1升级到1.6.5时,我面临着这个奇怪的问题.
当"原子"块处于活动状态时,这是禁止的.
我知道django 1.6的数据库事务更改并相应地进行了设置更改.除了request.user访问对象外,大部分都可以使用.
代码,例如:
with transaction.atomic():
if hasattr(request, 'user') and getattr(request.user, 'id', None):
#blah
Run Code Online (Sandbox Code Playgroud)
这是堆栈跟踪:
Environment:
Request Method: GET
Request URL: <domain>/api/v1/browser_id/
Django Version: 1.6.5
Python Version: 2.7.3
<Installed Applications & Middlewares snipped for brevity>
Traceback:
File "/usr/local/virtualenvs/karthik-django165/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
112. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/virtualenvs/karthik-django165/local/lib/python2.7/site-packages/django/db/transaction.py" in inner
371. return func(*args, **kwargs)
File "/home/kravindra/workspace/puppysite/puppy/kennel/views/etag_session.py" in browser_id
43. if hasattr(request, 'user') and getattr(request.user, 'id', None):
File "/usr/local/virtualenvs/karthik-django165/local/lib/python2.7/site-packages/django/utils/functional.py" in inner
213. self._setup() …Run Code Online (Sandbox Code Playgroud) 我试图将我的查询搜索与我的所有模型字段进行比较,但我无法确定如何在多个字段中执行此操作.
这是我的代码.
expense = Expense.objects.filter(user=request.user.id).order_by('date')
q = request.GET['q']
result = expense.filter(name__icontains=q)
Run Code Online (Sandbox Code Playgroud)
我要检查在:name,amount,category
提前致谢
下面是一个简单的samlple,我想使用for/in循环显示对象属性
var Object = { x:1, y:2, z:3 };
for (property in Object) {
console.log(Object.property);
};
Run Code Online (Sandbox Code Playgroud)
它显示未定义.
但如果使用console.log(Object[property]);它有效,并显示1 2 3
为什么我不能用于Object.property显示in/in循环?
当我尝试提交时,我得到一个TypeError:
int()参数必须是字符串或数字,而不是'SimpleLazyObject'
我的views.py:
def bookmark_save_page(request):
if request.method == 'POST':
form = BookmarkSaveForm(request.POST)
if form.is_valid():
# Create or get link.
link, dummy = Link.objects.get_or_create(
url=form.cleaned_data['url']
)
# Create or get bookmarks.
bookmark, created = Bookmark.objects.get_or_create(
user = request.user,
link = link
)
# Update bookmark title.
bookmark.title = form.cleaned_data['title']
# If the bookmark is being updated, clear old tag list.
if not created:
bookmark.tag_set.clear()
# Create new tag list.
tag_names = form.cleaned_data['tags'].split()
for tag_name in tag_names:
tag, dummy = Tag.objects.get_or_create(name=tag_name)
bookmark.tag_set.add(tag) …Run Code Online (Sandbox Code Playgroud) 我正在使用基本的博客应用程序练习django Class-Based-View.但是,出于某种原因,我的Post模型的CreateView没有将帖子保存在数据库中.
models.py
class Post(models.Model):
user = models.ForeignKey(User)
post_title = models.CharField(max_length=200)
post_content = models.CharField(max_length=500)
post_date = models.DateTimeField('date posted')
Run Code Online (Sandbox Code Playgroud)
forms.py
class PostForm(forms.ModelForm):
class Meta:
model = Post
exclude = ('user', 'post_date')
Run Code Online (Sandbox Code Playgroud)
views.py
class PostCreate(CreateView):
template_name = 'app_blog/post_save_form.html'
model = Post
form_class = PostForm
def form_valid(self, form):
form.instance.user = self.request.user
form.instance.post_date = datetime.now()
return super(PostCreate, self).form_valid(form)
Run Code Online (Sandbox Code Playgroud)
它显示内容而不会产生任何错误,但是当我检查管理页面时,CreateView创建的帖子没有保存在数据库中..任何想法.. ??
谢谢
我有一个包含用户列表的页面,并希望能够单击链接以更新其个人资料.点击"更新"后,我应该可以使用一个提交按钮在一个页面中编辑用户名,名字,...电子邮件,电话号码,部门等.我通过使用两个表单完成了这个,一个用于User,另一个用于额外信息.ListView,DeleteView和CreateView与这两种形式完美配合,但不适用于UpdateView.我无法使用初始数据实例化这两个表单.
问题是:如何用数据实例化两个表单?覆盖self.object?get_form_kwargs?什么是最优雅的解决方案?
UpdateView类如下所示.我不是在寻找'复制 - 粘贴'解决方案,但可能会指出我正确的方向.
谢谢.
保罗
电话号码,部门在名为Employee的模型中定义.
class Employee(models.Model):
user = models.OneToOneField(User)
phone_number = models.CharField(max_length=13, null=True)
department = models.CharField(max_length=100)
Run Code Online (Sandbox Code Playgroud)
模板是:
{% extends "baseadmin.html" %}
{% load crispy_forms_tags %}
{% block content %}
<h4>Edit a user</h4>
<form action="" method="post" class="form-horizontal">
<legend>Edit a user</legend>
{% crispy form %}
{% crispy form2 %}
<div class="form-actions">
<input type="submit" class="btn btn-primary" value="Save">
<a href="{% url 'client_list' %}" class="btn">Cancel</a>
</div>
</form>
{% endblock content %}
Run Code Online (Sandbox Code Playgroud)
视图类是:
class ClientUpdateView(UpdateView):
model = User
form_class = ClientsUserForm
second_form_class …Run Code Online (Sandbox Code Playgroud) 我正在使用Celery来自动化一些屏幕抓取.我正在使用Selenium打开Chrome webdriver,操作页面,保存一些数据,然后转到队列中的下一页.问题在于它为队列中的每个任务构建和分解Web驱动程序,这非常耗时且占用大量资源.
如何在通话中保留对象?我已经阅读了有关Celery中连接池的一些内容,但我不清楚这是如何工作的 - 我在哪里构建webdriver - 在任务文件或主排队文件中?如果是后者,工人们如何知道使用哪个webdriver?
例:
scrape.py:
for page in list:
scrape.delay(str(row['product_id']), str(row['pg_code']))
Run Code Online (Sandbox Code Playgroud)
tasks.py:
def scrape:
# do some stuff
Run Code Online (Sandbox Code Playgroud) django ×7
python ×7
django-views ×2
postgresql ×2
celery ×1
css ×1
django-1.6 ×1
django-forms ×1
javascript ×1
search ×1
transactions ×1