小编Ben*_*lah的帖子

Flask-SQLAlchemy - 大于或等于

我在查询如何在查询中进行"大于或等于"比较时遇到了麻烦.

我有一个模型领域:

invoicedate = db.Column(db.Date(), nullable=True, key='InvoiceDate')
Run Code Online (Sandbox Code Playgroud)

我正在尝试执行以下过滤器:

Invoice.query.filter_by(invoicedate >= date.today()).count()
Run Code Online (Sandbox Code Playgroud)

当我运行视图时,它不断抛出以下错误:

NameError: global name 'invoicedate' is not defined
Run Code Online (Sandbox Code Playgroud)

sqlalchemy或flask-sqlalchemy中大于或等于过滤器的正确语法是什么?

非常感谢 :)

sqlalchemy flask flask-sqlalchemy

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

Django REST框架:检查用户是否在组中

我想知道创建自定义权限的最佳方法,该权限检查用户是否在特定组中.以前,我有一个装饰器,我可以在视图上使用一组元组名称和用户对象传入,然后检查该用户是否在指定的组中.

即:

def in_group_views(*group_names):
    """Requires user membership in at least one of the groups passed in."""

    def in_groups(u):
        if u.is_authenticated():
            if bool(u.groups.filter(name__in=group_names)) | u.is_superuser:
                return True
        return False

    return user_passes_test(in_groups)
Run Code Online (Sandbox Code Playgroud)

我如何为视图集执行此操作,考虑到我需要检查不同操作的不同组成员身份(POST,PUT,GET)等.

非常感谢,本

django-rest-framework

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

Flask-SQLAlchemy查询结果的数量

我想知道是否有人知道如何从烧瓶模板中的查询输出结果的数量.

示例视图代码:

products = Product.query.all()
Run Code Online (Sandbox Code Playgroud)

在模板中,能够做到这一点很方便:

{{ products.count() }}
Run Code Online (Sandbox Code Playgroud)

反正有没有这样做,或者有没有人写过这样做的过滤器?

干杯,

flask flask-sqlalchemy

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

Django模型字段由变量

快问.我正在尝试使用变量访问模型的一个字段.

class ExampleModel(models.Model):
      the_field = models.CharField()
      the_field_two = models.CharField()
Run Code Online (Sandbox Code Playgroud)

如何动态访问该字段?我试过了:

model = ExampleModel.objects.get(pk=1)
fieldtoget = 'the_field'
test_var = model[fieldtoget]
Run Code Online (Sandbox Code Playgroud)

但它似乎没有用,任何想法我会怎么做?

更新:我想我会更新我的问题.我正在尝试编写一个函数(作为更大函数的一部分),它不仅可以获取字段的值,还可以从变量fieldname更新它.例如:

model[fieldtoget] = 'yo'
model.save()
Run Code Online (Sandbox Code Playgroud)

在PHP中你可以使用{}包装器 - $model{$fieldtoget}作为一个例子,对于动态变量名称希望在python中有类似的东西:)

干杯

python django

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

AngularJS:捕获所有响应状态500

这似乎是一个奇怪的请求.我想知道是否有一种方法使用$ http拦截器来捕获响应状态为500的第一个URL,然后停止所有后续请求和进程并执行某些操作?

javascript angularjs

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

Angularjs在控制器之间共享数据

我有一个从我的服务器获取一些客户端数据的服务:

app.factory('clientDataService', function ($http) {
    var clientDataObject = {};
    var cdsService = {
        fetch: function (cid) {
            //$http returns a promise, which has a then function, which also returns a promise
            var promise = $http.get('/clients/stats/' + cid + '/').then(function (response) {
                // The then function here is an opportunity to modify the response
                console.log(response);
                // The return value gets picked up by the then in the controller.
                clientDataObject = {'data': response.data, 'currentClientID': cid};
                return clientDataObject;
            });
            // Return the promise …
Run Code Online (Sandbox Code Playgroud)

angularjs

12
推荐指数
2
解决办法
5485
查看次数

Aurelia的全球职能

我正试图弄清楚如何在Aurelia中存储一个类似"全局"的功能.我已经按照本教程" http://blog.durandal.io/2015/04/24/aurelia-custom-elements-and-content-selectors/ "来打开一个带有动态视图模态的模态,但我可以'弄清楚我应该把这个功能放在哪里,这样我就可以重新使用它所有的查看路线了.

我在默认视图中创建了这个函数:

//open modal
setModal(modal) {
    this.contentModal = modal;
    $('.modal').modal();
}
Run Code Online (Sandbox Code Playgroud)

在该视图模板中使用此标记:

<a click.delegate="setModal('users')">Test</a> <a click.delegate="setModal('child-router')">Test 2</a>
<modal>
    <modal-header title.bind="'View Person'"></modal-header>
    <modal-body content.bind="contentModal"></modal-body>
    <modal-footer buttons.bind="['Cancel']"></modal-footer>
</modal>
Run Code Online (Sandbox Code Playgroud)

我可以通过click.delegate="setModal('users')视图模板内部调用它,但我无法弄清楚如何在此视图模板之外实际使用它.

对不起,我对这个框架很新!

javascript aurelia

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

Laravel 4队列

我一直在Laravel 4中使用Queue系统,效果很好! - 我想知道是否有办法查看Queue中的实际内容?我正在使用redis作为后端.

php laravel laravel-4

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

Django自定义保存模型

我正在尝试在django的保存模型中执行基本日期计算,请参阅下面的代码:

  class Purchase(models.Model):
    purchase_date = models.DateField()
    purchase_place = models.CharField(verbose_name='Place of Purchase', max_length=255)
    purchaseCategory = models.ForeignKey(PurchaseCategory, verbose_name='Purchase Category')
    cost = models.DecimalField(max_digits=11, decimal_places=2)
    warranty_period_number = models.IntegerField()
    warranty_period_type = models.CharField(max_length=255, choices=(('m', 'Month(s)'), ('y', 'Year(s)')))
    warranty_end_date = models.DateField(editable=False)
    scan = models.CharField(max_length=255)
    alerts = models.BooleanField(verbose_name='Receive Email Alerts?')
    user = models.ForeignKey('auth.User', editable=False)
    created = models.DateTimeField(editable=False, auto_now_add=True)
    modified = models.DateTimeField(editable=False, auto_now=True)

    #custom save model
    def save(self, *args, **kwargs):
        #figure out warranty end date
        if self.warranty_period_type == 'm':
            self.warranty_end_date = self.purchase_date + self.purchase_date.timedelta(months=self.warranty_period_number)
        else:
            self.warranty_end_date = self.purchase_date + …
Run Code Online (Sandbox Code Playgroud)

python django

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

Flask - 将request.args转换为dict

我一直在试图弄清楚如何将request.args传递给sqlalchemy过滤器.

我认为这应该有效:

model.query.filter(**request.args).all()
Run Code Online (Sandbox Code Playgroud)

但它正在抛出错误:

TypeError: <lambda>() got an unexpected keyword argument 'userid'
Run Code Online (Sandbox Code Playgroud)

当存在userid或任何其他get arg时.

根据这篇文章 - /sf/ask/1365427381/ - 您可以将dict传递给过滤器函数.

我有什么想法我做错了吗?

非常感谢 :)

更新:非常感谢下面的海报,但现在它抛出以下错误:

ProgrammingError: (ProgrammingError) (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY tblclients.clientname' at line 3") 'SELECT favourites.id AS favourites_id, favourites.userid AS favourites_userid, favourites.clientid AS favourites_clientid, favourites.last_visit AS favourites_last_visit \nFROM favourites INNER JOIN tblclients ON tblclients.clientid = …
Run Code Online (Sandbox Code Playgroud)

sqlalchemy flask flask-sqlalchemy

7
推荐指数
2
解决办法
8149
查看次数