我玩django-rest-framework,我会做以下事情:
from rest_framework import serializers
from .models import Author, Book
class BookSerializer(serializers.ModelSerializer):
author = AuthorSerializer(many=False)
class Meta:
model = Book
fields = ('slug', 'name')
class AuthorSerializer(serializers.ModelSerializer):
books = BookSerializer(many=True)
class Meta:
model = Author
fields = ('slug', 'name', 'books')
Run Code Online (Sandbox Code Playgroud)
但它失败了.
NameError at /api/books/authors/
name 'AuthorSerializer' is not defined
Run Code Online (Sandbox Code Playgroud)
有人帮忙吗?
在开发期间,有时会删除或重命名应用和模型权限.什么是从权限表中清除剩余物而不破坏某些东西的好方法?
例如:我有一个带有一些权限的articles模型的应用程序Article.
class Article(models.Model):
title = ...
text = ...
class Meta:
permissions = (
('can_edit_title', 'Can edit title of article'),
('can_edit_text', 'Can edit text of article'),
)
Run Code Online (Sandbox Code Playgroud)
我通过命令添加此权限(已安装django_extension):
./manage update_permissions
Run Code Online (Sandbox Code Playgroud)
但后来我意识到,最好给它命名can_update_title.所以我改变了模型:
class Article(models.Model):
...
class Meta:
permissions = (
('can_update_title', 'Can update title of article'),
('can_update_text', 'Can update text of article'),
)
Run Code Online (Sandbox Code Playgroud)
当我更新权限时,Django管理中既有权限又对用户 - 管理员来说真的很混乱.
我想在Django中实现非循环图结构.例如,我在树结构中有一些类别:
Guitars
- Classical Guitars
- Western Guitars
- Guitars for Children
Ukuleles
- Soprano Ukulele
- Concert Ukulele
- Baryton Ukulele
- Ukuleles for Children
Run Code Online (Sandbox Code Playgroud)
现在,我想补充类别For Children并创建链接到现有的类别Guitars for Children和Ukuleles for Children.但是我必须避免这个图中的周期.
实现它的最简单方法是什么?有可能用django-mptt吗?我需要它在动态和易于修改的管理.您可以将其映像为复杂eshop中的类别结构.
我有基于Twitter Bootstrap的简单3列布局.唯一的问题是,每个列都是从具有不同高度的块组装而成.
<div class="container">
<div id="blocks" class="row">
<div class="span4">
<div class="block" id="block1">
<div class="block" id="block4">
<div class="block" id="block7">
</div>
<div class="span4">
<div class="block" id="block2">
<div class="block" id="block5">
<div class="block" id="block8">
</div>
<div class="span4">
<div class="block" id="block3">
<div class="block" id="block5">
<div class="block" id="block9">
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
.
除小型显示器外,它工作得很好.然后不对块的顺序进行排序.

有没有办法在没有任何JavaScript的情况下实现排序块?
我有这样的正则表达式:
^page/(?P<id>\d+)-(?P<slug>[^\.]+)\.html$
Run Code Online (Sandbox Code Playgroud)
和一个数组:
$args = array(
'id' => 5,
'slug' => 'my-first-article'
);
Run Code Online (Sandbox Code Playgroud)
我想有功能:
my_function($regex, $args)
Run Code Online (Sandbox Code Playgroud)
这将返回此结果:
page/5-my-first-article.html
Run Code Online (Sandbox Code Playgroud)
怎么能实现这一目标?
像https://docs.djangoproject.com/en/dev/ref/urlresolvers/#reverse这样的东西
我有一个表单,验证取决于已登录的用户.对于某些用户,某些值是有效的,对于其他用户,它们是无效的.什么是有效的,什么是无效的是动态的 - 我不能为每个用户组创建新的表单.
更重要的是,我需要在更多表单中进行相同的验证,因此我创建了自定义表单字段.对于这个自定义表单字段,我需要以某种方式传递用户实例以检查该值是否有效.
这该怎么做?
如何更改/的chmod?
我跑的时候
chmod 755 /
Run Code Online (Sandbox Code Playgroud)
根本,我明白了
Operation not permitted
Run Code Online (Sandbox Code Playgroud)
为什么我需要它?
我正在安装(以root身份登录)apt-get install memcached,我收到错误:
failed to move /initrd.img:Permission denied at /var/lib/dpkg/info/linux-image-3.2.0-26-generic.postinst line 495.
Run Code Online (Sandbox Code Playgroud) django ×4
api ×1
chmod ×1
css3 ×1
django-mptt ×1
field ×1
forms ×1
generator ×1
graph ×1
html5 ×1
linux ×1
permissions ×1
php ×1
preg-replace ×1
regex ×1
request ×1
rest ×1
root ×1
validation ×1