我在我的应用程序中进行了一些重复操作(测试它),突然间我得到一个奇怪的错误:
OperationalError: database is locked
Run Code Online (Sandbox Code Playgroud)
我重新启动了服务器,但错误仍然存在.一切都是关于什么的?
我的项目中有一种情况,我需要将用户重定向到包含参数的url(它在urls.py中声明如下:
url(r'^notamember/(?P<classname>\w+)/$',
notamember,
name='notamember'),)
Run Code Online (Sandbox Code Playgroud)
如何将该参数放入返回HttpResponseRedirect?我尝试过:返回HttpResponseRedirect('/ classroom/notamember/classname'),无论如何,这是愚蠢的,我知道,我不能把'classmane'当作参数.为清楚起见,我的观点是:
def leave_classroom(request,classname):
theclass = Classroom.objects.get(classname = classname)
u = Membership.objects.filter(classroom=theclass).get(member = request.user).delete()
return HttpResponseRedirect('/classroom/notamember/theclass/')
Run Code Online (Sandbox Code Playgroud)
我怎样才能在该网址中包含变量'theclass'?非常感谢!
在迷你博客应用程序中,我想创建一个删除功能,以便博客的所有者可以删除他的条目(只有他的条目).我想这样做的唯一方法是使用表单.虽然我的删除代码似乎清晰正确,但它不起作用.我的代码:
def delete_new(request,id):
u = New.objects.get(pk=id).delete()
if request.method == 'POST':
form = DeleteNewForm(request.POST)
form.u.delete()
form.save()
return render_to_response('news/deleteNew.html', {
'form': form,
},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
并在模板中:
<a href='/news/delete_new/{{object.id}}/'> Delete</a> <br />
Run Code Online (Sandbox Code Playgroud)
这是正确的方法吗?我的意思是,为此创建一个表单?另外,获取与删除链接相关联的博客文章的唯一方法是将id作为参数.这样对吗?我的意思是,也许任何用户都可以在网址中键入另一个ID,并删除另一个条目(最终不是他的一个)
我有一个div,具有特定的风格(让我们说一个特定的背景).
我想要的是,当一个单击具有该div的列表元素时,应用另一个特定样式(另一个背景类型)来应用于该div,
如果单击属于该div的其他元素中的另一个区域,则该样式不应更改.
是否可以使用jquery?谢谢!
编辑:(我的功能也做了一些其他的事情.但是改变的颜色不会像我想的那样工作.它会改变我点击的所有项目的背景,而不仅仅是最后点击的.)
$(document).ready(function() {
$('.product_types > li').click(function() {
$(this)
.css('backgroundColor','#EE178C')
.siblings()
.css('backgroundColor','#ffffff');
$('#submit_button').removeAttr('disabled');
$('#number').removeAttr('disabled');
});
});
Run Code Online (Sandbox Code Playgroud) 我正在努力保存相同的表格两个表 - 有一个m2m的关系.我没有成功,我的错误仍然存在于以下内容:无法在指定中间模型的ManyToManyField上设置值.使用会员经理而不是会员资格是我的'直通表'.
我的代码:
def save_classroom(request):
classroom_instance = Classroom()
if request.method == 'POST':
form = ClassroomForm(request.POST, request.FILES, user = request.user)
if form.is_valid():
new_obj = form.save(commit=False)
new_obj.user = request.user
new_obj.save()
membership = Membership(member = request.user,classroom=new_obj)
membership.save()
form.save_m2m()
return HttpResponseRedirect('.')
else:
form = ClassroomForm(user = request.user)
return render_to_response('classroom/classroom_form.html', {
'form': form,
},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
我的模特:
class Classroom(models.Model):
user = models.ForeignKey(User, related_name = 'classroom_creator')
classname = models.CharField(max_length=140, unique = True)
date = models.DateTimeField(auto_now=True)
open_class = models.BooleanField(default=True)
members = models.ManyToManyField(User,related_name="list of invited members", through = …Run Code Online (Sandbox Code Playgroud) 我在保存m2m数据方面遇到了麻烦,其中包含一个"通过"类表.我想在直通表中保存所有选定的成员(在表单中选择).但我不知道如何在视图中初始化"通过"表.
我的代码:
class Classroom(models.Model):
user = models.ForeignKey(User, related_name = 'classroom_creator')
classname = models.CharField(max_length=140, unique = True)
date = models.DateTimeField(auto_now=True)
open_class = models.BooleanField(default=True)
members = models.ManyToManyField(User,related_name="list of invited members", through = 'Membership')
class Membership(models.Model):
accept = models.BooleanField(User)
date = models.DateTimeField(auto_now = True)
classroom = models.ForeignKey(Classroom, related_name = 'classroom_membership')
member = models.ForeignKey(User, related_name = 'user_membership')
Run Code Online (Sandbox Code Playgroud)
并在视图中:
def save_classroom(request):
classroom_instance = Classroom()
if request.method == 'POST':
form = ClassroomForm(request.POST, request.FILES, user = request.user)
if form.is_valid():
new_obj = form.save(commit=False)
new_obj.user = request.user
new_obj.save()
membership …Run Code Online (Sandbox Code Playgroud) 我想为我的应用程序设置主页面或索引页面.我尝试在settings.py中添加MAIN_PAGE然后创建一个main_page视图返回一个main_page对象,但它不起作用另外,我试图在urls.py中添加一个声明,如
(r'^$', index),
Run Code Online (Sandbox Code Playgroud)
其中index应该是根目录下index.html文件的名称(但显然不起作用)
在Django网站中设置主页的最佳方法是什么?
谢谢!
我有一个简单的视图,我正在保存一个表格.代码似乎"干净",但我无法摆脱错误:"视图没有返回一个HttpResponse对象." 虽然我在网上搜索过,但我没有找到相关的指示.
def classroom_privacy(request,classname):
theclass = Classroom.objects.get(classname=classname)
if request.method == 'POST':
form = PrivacyClass(request.POST)
if form.is_valid():
new_obj = form.save(commit=False)
new_obj.save()
return HttpResponseRedirect('.')
else:
form = PrivacyClass()
return render_to_response('classroom/classroom_privacy.html', {'form': form},
context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
谢谢!
我有一个列表,(一个简单的列表),我可以从中选择和设置元素(使用js),然后是一个允许我选择我想要的元素的表单,以及一个提交表单.如果没有选择一个元素,有一个抛出异常的脚本.问题是我希望表单不提交,如果没有选择元素,但不抛出异常,而是向我显示提交按钮下的消息(使用jquery).我的脚本如下:
<? foreach ($types as $type):?>
<ul class = "product_types">
<? if ($type->stock_2 > 0):?>
<li id = 'product_types'><a href="#" onclick='selecteazaElement(<?= $type->id; ?>,<?= $type->stock_2; ?>);'><?= $type->label; ?></a></li>
<? else: ?>
<li id = 'product_unavailable_types'><label><?= $type->label; ?></label></li>
<? endif; ?>
</ul>
<? endforeach; ?>
<form name="addtobasket" method="POST" action="<?= Route::url('Add to Basket', array('sale_id' => $sale->id)); ?>">
<input type="hidden" name="idOfSelectedItem" id="idOfSelectedItem" value="-1">
<select name="number" id="number">
<option value=0>Alege numarul de produse</option> </select>
<button type="submit" name = "submit" onclick="addtobasket";>Adauga in cos</button><br />
</form>
Run Code Online (Sandbox Code Playgroud)
以及设置列表元素的js:
<script …Run Code Online (Sandbox Code Playgroud) 我有一个小的javascript函数,当点击具有onclick该功能的元素时,它会执行某些操作.
我的问题是:我希望,在这个函数中,设置字体颜色为具有此功能的html元素onclick.但我没有成功.我的代码:
<script type="text/javascript">
function selecteazaElement(id,stock){
document.addtobasket.idOfSelectedItem.value=id;
var number23=document.addtobasket.number;
number23.options.length=0;
if (stock>=6) stock=6;
for (i=1;i<=stock;i++){
//alert ('id: '+id+'; stock: '+stock);
number23.options[number23.options.length]=new Option(i, i);
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
以及我如何使用它:
<li id = "product_types">
<a href="#" onclick='selecteazaElement(<?= $type->id; ?>,<?= $type->stock_2; ?>);'><?= $type->label; ?></a>
</li>
Run Code Online (Sandbox Code Playgroud)
有什么建议?谢谢!
我添加了另一个功能(jquery one),它可以部分地完成我需要的功能.新问题是:我希望仅在最后点击的项目上设置背景颜色,而不是在我点击的所有项目上设置.上面的代码:
$(document).ready(function() {
$('.product_types > li').click(function() {
$(this)
.css('background-color','#EE178C')
.siblings()
.css('background-color','#ffffff');
});
});
Run Code Online (Sandbox Code Playgroud)
任何想法为什么?
谢谢!