小编Tre*_*Cat的帖子

如何在 Flask sqlalchemy 中查询某段日期时间?

在 Flask 中,我有一个名为 User 的模型,如下所示:

class Post(db.Model):
    __tablename__ = 'post'
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(255))
    content = db.Column(db.Text)
    post_time = db.Column(db.DateTime(), index=True, default=datetime.now)
Run Code Online (Sandbox Code Playgroud)

我想查询某个时期的日期时间,例如,我需要查询之间发布的所有帖子2016-11-012016-11-30
我试图通过拼接字符串来实现这一点,如下所示:

posts = Post.query.filter(Post.post_time <= year_month+'-30').filter(Post.post_time >= year_month+'-01')
Run Code Online (Sandbox Code Playgroud)

但这很尴尬,有没有更好的方法来解决这个问题?

python sqlalchemy flask flask-sqlalchemy

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

我可以在 Flask 模板中嵌套变量吗?

大家好,我在 Flask 中遇到了一个问题。mysql中有一个表名为category,我查询了所有的表,然后传给a.html,像这样:

return render_template('admin_index.html', username=session.get('username'), categories=categories)
Run Code Online (Sandbox Code Playgroud)

在 admin_index.html 中,我想列出所有这些,这是我的代码:

var _menus = {
    "menus": [
        {
            "menuid": "1",
            "icon": "icon-sys",
            "menuname": "category",
            "menus": [
                {% for category in categories %}
                    {
                        "menuid": "{{ category.id }}",
                        "menuname":"{{ category.name }}",
                        "icon": "icon-users",
                        "url": "{{url_for('admin.category', id={{category.id}} _external=True) }}"
                    },
                {% endfor %}
            ]
        }
    ]
};
Run Code Online (Sandbox Code Playgroud)

但是当我运行这个时,我得到了一个错误:

jinja2.exceptions.TemplateSyntaxError:预期的标记“:”,得到“}”

我尝试删除{{ category.id }},结果还可以,我怀疑不允许在 Flask 模板中嵌套变量,如下所示:

{{ a is {{ b }} }}
Run Code Online (Sandbox Code Playgroud)

有什么办法可以嵌套吗?

flask

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

为什么我不能在ES6中新建一个对象?

我正在学习ES6,我编写了如下测试代码:

// export.js:
class Test {
    constructor() {
        console.log('teste5ty')
    }
}

class Test2 {
    constructor() {
        console.log('test2')
    }
}
export {Test, Test2}
export default Test
Run Code Online (Sandbox Code Playgroud)

另一个导出文件代码如下:

// test2.js
class Teste3 {
    construct() {
        console.log('heheheheh')
    }
}
export default Teste3
Run Code Online (Sandbox Code Playgroud)

最后,测试代码如下:

import Test from './export'
import {Test2} from './export'
import Teste3 from './test2'

new Test()
new Test2()
new Teste3()
Run Code Online (Sandbox Code Playgroud)

在通过Babel转换为es5之后,我得到了如下输出:

teste5ty
test2
Run Code Online (Sandbox Code Playgroud)

显然,Test3没有实例化,为什么会这样呢?

node.js

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

标签 统计

flask ×2

flask-sqlalchemy ×1

node.js ×1

python ×1

sqlalchemy ×1