小编ZvL*_*ZvL的帖子

DRF测试:返回OrderedDict而不是JSON

我正在尝试为Django Rest Framework实现测试.我的大多数测试都通过并且设置assertEqual得很顺利,但我现在遇到一个问题,因为它一直在比较JSON和OrderedDict.

我不知道OrderedDict来自哪里,因为DRF 应该只返回JSON(对吧?).

测试环境可能在比较之前解析JSON吗?那会很糟糕.

我正在进行集成测试,只测试GET请求对某个资源的响应中的数据,我是基于JSON装置做的.我没有测试REST框架的特定组件,因为我的组件实现非常简单,它们已经通过DRF项目中的测试进行了测试.

无论如何,我希望有人可以帮助我!

django rest json django-rest-framework

19
推荐指数
3
解决办法
7041
查看次数

Symfony2 Doctrine Querybuilder全选

我目前正在使用SF2中的服务,该服务使用在本服务的构造函数中使用特定于存储库的QueryBuilder的类变量集来使用QueryBuilder查询数据库.这意味着我想尽可能地使用这个集合QueryBuilder来获得更整洁的代码和使用它的干净感觉.

我想避免在EntityManager上创建查询,而是仅使用此预定义的Querybuilder进行查询.

我正在寻找看起来像以下那样的东西:

$query = $this->fooRepository->createQueryBuilder('f')->select('*');
return $query->getResult(Query::HYDRATE_ARRAY);
Run Code Online (Sandbox Code Playgroud)

据我所知,以上将(如果它工作)返回数据库中的所有foo ..

如果您认为我是愚蠢的,应该对预定义的QueryBuilders做一些不同的事情,或者只使用:

createQuery()
Run Code Online (Sandbox Code Playgroud)

方法,因为它根本不是好的做法或不可能,不要犹豫告诉我.

谢谢!

php query-builder doctrine-query symfony doctrine-orm

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

Django Rest Framework - 获取列表中的完整相关对象

我是Django Rest Framework的新手,我正在尝试使用DRF序列化(相关)对象列表.

我有以下型号:

class Answer(models.Model):
   value = models.CharField(max_length=128)

class User(models.Model):
   name = models.CharField(max_length=128)
   age = models.PositiveIntegerField()

class UserAnswer(models.Model):
    user = models.ForeignKey(User)
    answer = models.ForeignKey(Answer)
Run Code Online (Sandbox Code Playgroud)

我试图获得的结果是这种形式:

[
    {
     "name": "myName1",
     "answers": [
        {
          "value": "myFirstAnswer"
        },
        {
          "value": "mySecondAnswer"
        },
        {
          "value": "myThirdAnswer"
        },
        ]
    },
    {
     "name": "myName2",
     "answers": [
        {
          "value": "myFirstAnswer"
        },
        {
          "value": "mySecondAnswer"
        },
        {
          "value": "myThirdAnswer"
        },
        ]
    }
]
Run Code Online (Sandbox Code Playgroud)

我现在正试着这样做:

class UserAnswerSerializer(serializers.ModelSerializer):
    answers = AllUserAnswersSerializer(many=True, read_only=True)
    class Meta:
        model = User
        fields = …
Run Code Online (Sandbox Code Playgroud)

python django rest django-rest-framework

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

Django handler404没有调用提升Http404()

当我覆盖urls.py中的handler404和handler500时,如下所示:

from myapp.views import not_found_view

handler404 = not_found_view
handler500 = not_found_view
Run Code Online (Sandbox Code Playgroud)

并调用raise Http404()我的中间件,我看到我的404页面.

当我都删除handler404,并handler500从我urls.pyraise Http404()我的中间件,我看到我的默认的500错误页面(从Django的套装) -因此我试图设置自定义模板404的理由上使用raise Http404()的.

现在我的问题:当我删除handler500并且只设置handler404时,我也会看到HTTP 500页面!:|

为什么我handler500被叫了raise Http404()

我在多个应用程序中有多个模板目录,我尝试404.html在我的主应用程序中放置一个包含设置和另一个"普通"应用程序,但这不起作用..

我已经设置DEBUGFalse为好.

希望有人能回答我的问题!

python django django-templates http-status-code-404

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

Django Rest Framework在使用ModelSerializer在viewset中保存之前将字段添加到模型

使用Django Rest Framwork,我想在数据库中设置一个不能为null的字段,但是fields在我实际保存ModelSerializer管理的模型之前,它不包含在Meta类的元组中.

在我ViewSet,我定义perform_create并想要做这样的事情:

serializer.fields.new_field = new_field_id

这里new_field是我的模型和new_field.id外键是我使用的cookie中设置的值只取模型的ID.

有谁知道这个干净的解决方案?

谢谢!

python django serialization django-rest-framework

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

Zend:空白屏幕

对于我的工作,我必须编辑一个用Zend框架创建的网站.当我在我的测试服务器上部署它们并浏览到index.php时,我得到的是一个空白屏幕.

我打开了display_startup_errors和error_reporting,没有显示错误.

也许它与网站的某些文件中的路径有关,因为它是由另一家公司创建的,该公司在实际服务器上部署网站后向我提供了文件.

我真的希望有人可以帮助我..我已经通过互联网搜索但是从来没有找到解决方案,即使多人遇到了我的问题.

提前致谢.

php apache zend-framework zend-session zend-framework2

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