小编Phi*_*ipl的帖子

使用 Django 时如何在命令行上退出 dbshel​​l (SQLite 3)?

使用 Django 时如何在命令行上退出 dbshel​​l (SQLite 3)?

这是我第一次使用命令。我一边看书一边练习 Django。运行这个命令后,我不知道如何离开环境,因为我之前从未学习过SQL。

python sqlite django

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

Jquery slideToggle无法使用$(this).find

我想选择子'.comment'元素slideToggle它每次我点击'.item'元素.HTML代码:

<div class="row col-md-12 item">
  <div class="col-md-4">Name</div>
  <div class="col-md-4">degree of usage</div>
  <div class="col-md-4">price</div>
  <div class="col-md-12 comment">comment</div>
</div>
Run Code Online (Sandbox Code Playgroud)

Js代码

$('.item').on('click', (event) => {
  $('.item > .comment').slideUp(200);
  $(this).find('.comment').slideToggle(200);
});
Run Code Online (Sandbox Code Playgroud)

似乎slideUp效果可以正常工作,但$(this).find无法捕获其中的'.comment'元素.

javascript jquery

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

使用get_object_or_404 django失败

这是代码:

>>> from shortener.models import KirrURL
>>> from django.shortcuts import get_object_or_404
>>> obj = get_object_or_404(KirrURL,shortcode='pric3e')

Traceback (most recent call last):File"/Users/phil/Desktop/django110/lib/python3.5/site
packages/django/shortcuts.py", line 85, in get_object_or_404
return queryset.get(*args, **kwargs)
File "/Users/phil/Desktop/django110/lib/python3.5/site-packages/django/db/models/query.py", line 385, in get
self.model._meta.object_name
shortener.models.DoesNotExist: KirrURL matching query does not exist.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/Users/phil/Desktop/django110/lib/python3.5/site-packages/django/shortcuts.py", line 93, in get_object_or_404
raise Http404('No %s matches the given query.' %     queryset.model._meta.object_name)
django.http.response.Http404: No KirrURL …
Run Code Online (Sandbox Code Playgroud)

python django django-models

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

Django编写仅限于某些用户的通用更新视图

我正在使用 django 构建一个小博客。我想构建一个允许帖子作者删除和更新他们自己的帖子的功能。然后我发现 django 有 LoginMixin 用于通用视图,但它只会阻止那些没有登录的人。

我的文章模型如下

class Article(models.Model):
    author = models.ForeignKey(User)
    updated = models.DateTimeField(auto_now=True)
    created = models.DateTimeField(auto_now_add=True)
    title = models.CharField(max_length=50)
    context = models.TextField()

    genre_choice = (('O','Others'),('P','Programming'),('L','Learning'),('E','Entertainment'))

    genre = models.CharField(max_length=2,choices=genre_choice,default='O')
    def __str__(self):
        return "{} - {}".format(self.title,self.author)

    def get_absolute_url(self):
        return reverse("article-detail",args=str(self.id))
Run Code Online (Sandbox Code Playgroud)

这是通用文章详细信息视图。

class ArticleDetail(DetailView):
    model = Article
Run Code Online (Sandbox Code Playgroud)

我首先想在细节模板中添加这样的东西:

{% if article.author == user.username%}
 <!-- Some a tag that directs to the update view -->
{% endif %}
Run Code Online (Sandbox Code Playgroud)

然后我意识到这只是隐藏了 a 标签,它无法阻止其他用户触摸更新 url 只需更改 url。

django 有没有什么办法可以通过简单的通用视图来限制原始用户的更新和删除权限? 即使他们直接输入更新 url 也会被拒绝。

python django

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

标签 统计

django ×3

python ×3

django-models ×1

javascript ×1

jquery ×1

sqlite ×1