Tag: django

Django Rest框架file upload

我正在使用Django Rest Framework和AngularJs上传文件。 我的观点文件如下所示: class ProductList(APIView): authentication_classes = (authentication.TokenAuthentication,) def get(self,request): if request.user.is_authenticated(): userCompanyId = request.user.get_profile().companyId products = Product.objects.filter(company = userCompanyId) serializer = ProductSerializer(products,many=True) return Response(serializer.data) def post(self,request): serializer = ProductSerializer(data=request.DATA, files=request.FILES) if serializer.is_valid(): serializer.save() return Response(data=request.DATA) 作为post方法的最后一行应该返回所有的数据,我有几个问题: 如何检查request.FILES是否有任何内容? 如何序列化文件字段? 我应该如何使用parsing器?

在Django中加载fixture时contenttypes的问题

由于内容types冲突,我无法将Django Fixtures加载到我的MySQL数据库中。 首先,我尝试从我的应用程序倾销数据,如下所示: ./manage.py dumpdata escola > fixture.json 但我一直在错过外键问题,因为我的应用程序“escola”使用来自其他应用程序的表。 我不断添加额外的应用程序,直到我得到这个: ./manage.py dumpdata contenttypes auth escola > fixture.json 现在,当我尝试加载数据作为testing夹具时,问题是以下约束冲突: IntegrityError: (1062, "Duplicate entry 'escola-t23aluno' for key 2") 看来问题是,Django试图dynamic重新创build与主键值不同的主键值的contenttypes。 这似乎与此处logging的错误相同: http : //code.djangoproject.com/ticket/7052 问题是推荐的解决方法是转储我已经在做的contenttypes应用程序! 是什么赋予了? 如果它有什么区别,我有一些自定义模型的权限,这里logging: http : //docs.djangoproject.com/en/dev/ref/models/options/#permissions

在Django中保存unicodestring时,MySQL“错误的string值”错误

尝试将first_name,last_name保存到Django的auth_user模型时,出现奇怪的错误消息。 失败的例子 user = User.object.create_user(username, email, password) user.first_name = u'Rytis' user.last_name = u'Slatkevičius' user.save() >>> Incorrect string value: '\xC4\x8Dius' for column 'last_name' at row 104 user.first_name = u'Валерий' user.last_name = u'Богданов' user.save() >>> Incorrect string value: '\xD0\x92\xD0\xB0\xD0\xBB…' for column 'first_name' at row 104 user.first_name = u'Krzysztof' user.last_name = u'Szukiełojć' user.save() >>> Incorrect string value: '\xC5\x82oj\xC4\x87' […]

jQuery的 – 可以线程/asynchronous完成?

我目前正在与Django框架使用AJAX 。 我可以通过asynchronous POST / GET到Django ,并让它返回一个json对象。 然后根据从Django传递的结果,我将遍历数据,并更新网页上的表格。 表格的HTML: <!– Modal for Variable Search–> <div class="modal fade" id="variableSearch" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button> <h4 class="modal-title" id="myModalLabel">Variable Name Search</h4> </div> <div class="modal-body"> <table id="variableSearchTable" class="display" cellspacing="0" width="100%"> <thead> <tr> <th> Variable Name </th> </tr> </thead> […]

最好的方法使Django的login_required默认

我正在开发一个大型的Django应用程序,其中绝大多数需要login才能访问。 这意味着,我们所有的应用程序,我们洒了: @login_required def view(…): 这很好, 只要我们记得把它添加到任何地方 ,它就会很好用 ! 可悲的是,有时我们会忘记,而失败往往不是非常明显。 如果唯一链接到一个视图是在@login_required页面上,那么你不可能注意到你可以在没有login的情况下实际访问该视图。但是坏人可能会注意到,这是一个问题。 我的想法是扭转系统。 而不是必须在任何地方input@login_required,而应该是这样的: @public def public_view(…): 只是为了公众的东西。 我试图用一些中间件实现这一点,我似乎无法得到它的工作。 我想,我尝试过的所有事情都与我们使用的其他中间件有着很大的不良影响。 接下来,我尝试编写一些东西来遍历URL模式,以检查不是@public的所有内容是否标记为@login_required – 至less在我们忘记了某些内容的情况下会出现一个错误。 但后来我无法弄清楚如何判断@login_required是否已经应用到视图中… 那么,怎样才能做到这一点呢? 谢谢您的帮助!

在Django导航

我刚刚在django做了我的第一个小webapp,我喜欢它。 我即将开始将旧生产PHP站点转换为Django,作为其模板的一部分,有一个导航栏。 在PHP中,我检查每个导航选项的URL与模板代码中的当前URL,并应用一个CSS类,如果他们排队。 这是可怕的凌乱。 有没有更好的Django或在模板中处理代码的好方法? 要开始,我将如何去获取当前的url?

如何使用基于Django类的genericsListView分页?

我如何使用Django 1.3分页? 这个文件不是很清楚。 什么去我的views.py ? 什么去我的模板? 什么去我的URLconf文件?

Django项目工作目录结构的最佳实践

我知道实际上没有单一的正确方法。 不过,我发现很难创build一个适用于每个开发人员和pipe理员的清晰的目录结构。 Github上的大多数项目都有一些标准的结构。 但它并没有显示出一种方式来组织其他文件和所有项目在PC上。 在开发机器上组织所有这些目录的最方便的方法是什么? 你如何命名它们,以及如何连接并将其部署到服务器? 项目(您正在进行的所有项目) 源文件(应用程序本身) 存储库的工作副本(我使用git) 虚拟环境(我更喜欢把它放在项目的附近) 静态根(用于编译的静态文件) 媒体根(用于上传的媒体文件) 读我 执照 文件 素描 示例(使用此项目提供的应用程序的示例项目) 数据库(如果使用sqlite) 任何你通常需要的项目成功的工作 我想解决的问题是: 好名字的目录,使他们的目的是明确的。 保持所有的项目文件(包括virtualenv)在一个地方,所以我可以很容易地复制,移动,归档,删除整个项目或估计磁盘空间的使用情况。 创build一些选定的文件集的多个副本,如整个应用程序,存储库或virtualenv,同时保留我不想克隆的另一个文件的单一副本。 只需通过rsyncing选定的一个目录来将正确的一组文件部署到服务器。

Django使用OpenID的最佳解决scheme是什么?

请注意 :这是一个古老的问题与古代的答案。 大多数关联的应用程序现在没有维护。 现在大多数人似乎都使用django-allauth或者python-social-auth 。 为了后代的缘故,我将在下面保留原来的问题。 至less有半打的Django应用程序为Django提供了OpenIDauthentication: Django的OpenID的 Django的OpenID的身份validation 另一个django-openid-auth ,似乎已经死了 Django的authopenid django-socialauth (也提供Twitter和Facebook帐户的身份validation) django-socialregistration (也有Facebook和Twitterauthentication) django-openid-consumer ,Simon Willison的原创django-openid的一个分支。 似乎更适合简单的博客评论,而不是一个完整的注册工作stream程 Django的社会身份validation 我和其中几个玩过。 Simon Willison的django-openid给人留下了很好的印象,但是由于他在Djangoland的潮stream前沿,所以我有时候会困惑于自己的stream行趋势(比如django-openid中的dynamicurlpatterns系统)。 更重要的是,我无法login与Google合作。 django-authopenid给人留下了很好的印象,似乎与django注册有很好的结合。 django-socialauth和django-socialregistration支持Twitter和Facebook,这绝对是一个优点 。 谁知道Facebook是否以及何时开始成为OpenID提供商…? 然而,socialauth似乎也有它的问题 。 那么,那里最好的OpenID应用是什么? 请分享任何积极(和消极)的经验。 谢谢!

我怎样才能有两个外键在Django相同的模型?

我想有两个外键到同一个模型: class Test(models.model): example1 = models.ForeignKey(Example) example2 = models.ForeignKey(Example) 我得到如下错误: 字段“example1”的访问器与相关字段“Example.test_set”冲突。 将一个related_name参数添加到“example1”的定义中。