小编Ale*_*exH的帖子

是否可以在django模板中检查对象是否包含在列表中

我对django很新,大约一个星期.

我正在创建一个用户输入内容的网站,然后其他用户可以投票决定他们是否喜欢这些内容.我知道它不是那么新颖,但这是一个学习一堆工具的好项目.

我有一个多对多的表来存储谁喜欢或不喜欢什么.在我渲染页面之前,我将为当前用户提取所有喜欢和不喜欢的东西,以及我将要在页面上显示的内容.

当我渲染页面时,我会查看我要显示的内容列表,并一次打印出来.我想向用户展示他们喜欢的东西,以及他们没有的东西.

所以在我的django模板中,我有一个名为entry的对象.我还有两个名为"不喜欢"的对象列表.有没有办法在我的django模板中确定条目是否是任何一个列表的成员.

我认为我正在寻找的是一个过滤器,我可以这么说

{% if entry|in:likes %}
Run Code Online (Sandbox Code Playgroud)

要么

{% if likes|contains:entry %}
Run Code Online (Sandbox Code Playgroud)

我知道我可以在我的模型中添加一个方法并单独检查每个条目,但这似乎是数据库密集型的.

有没有更好的方法来考虑这个问题?

django

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

如何在 django rest 框架中捕获数据库错误?

我对数据库字段有唯一的约束。当提交重复时,我想避免发送 500 响应。如何在 DRF 中捕获此错误并返回 4XX 响应?

django django-rest-framework

5
推荐指数
2
解决办法
1841
查看次数

Django错误电子邮件太长。如何截断它?

似乎Django 1.9中的错误电子邮件比以前更长。我认为“设置”有一个完整的部分,我认为这是多余的,而且可能也很容易透露。

编辑Django发送的错误电子邮件的最佳方法是什么?

编辑:我不只是试图隐藏敏感信息。Django 1.9中的电子邮件中包含更多内容,我想将电子邮件的格式更改为更短。我喜欢旧的方式。

django django-errors

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

angularjs没有加载部分

我正试图通过django整理一个基本的angularjs网页(但在这个例子中并没有真正使用django).我试图完全复制一个例子,但它不起作用.部分和控制器未加载.网址已更新,因此我知道应用正在加载.但我看不到它部分或数据完全打击我的网络服务器.帮助将不胜感激.

这是我可以放在一起的最简单的代码.

的test.html:

<!doctype html>
<html ng-app="ciqApp">
    <head>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.14/angular.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.14/angular-route.js"></script>
        <script type="text/javascript" src="js/app.js"></script>
        <script type="text/javascript" src="js/controllers.js"></script>
    </head>
    <body>
        TEST
        <div ng-view>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

JS/app.js

var ciqApp = angular.module('ciqApp', [
        'ngRoute',
        'ciqControllers'
        ]);

ciqApp.config(['$routeProvider',
        function($routeProvider){
            $routeProvider.
                when('/questions', {
                    templateURL: '/static/partials/question-list.html',
                    controller: 'QuestionListCtrl'
                }).
                otherwise({
                    redirectTo: '/questions'
                });
        }]);
Run Code Online (Sandbox Code Playgroud)

JS/controllers.js

var ciqControllers = angular.module('ciqControllers', []);

ciqControllers.controller('QuestionListCtrl', ['$scope', '$http',
        function ($scope, $http) {
            $http.get('/get_questions').success(function(data) {
                $scope.questions = data;
            });
        }]);
Run Code Online (Sandbox Code Playgroud)

javascript angularjs angularjs-routing

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