【问题标题】:How to perform an "UPDATE" with elixir如何使用 elixir 执行“更新”
【发布时间】:2010-11-27 03:54:42
【问题描述】:

我正在为我自己的个人聚合器编写的一个小型网络应用程序中使用 elixir/flask。

我正在尝试创建一个安静的调用来将特定 rssfeed 的所有项目标记为已读。

SQL 语句类似于UPDATE model_rssitems set hasbeenseen = 1 where rssfeed_id = '%s' % feedid

我不知道如何编写代码让 elixir 执行该操作,当我尝试使用 session.execute 时,我收到一条错误消息 UnboundExecutionError: Could not locate a bind configured on SQL expression or this Session

我确定我做错了什么,但我不知道是什么。

【问题讨论】:

    标签: python sql flask python-elixir


    【解决方案1】:

    我假设你还没有使用 bind 表达式:)

    你的代码需要这样的东西来告诉Elixir你正在使用什么数据库。

    from elixir import metadata
    metadata.bind = 'sqlite:///your_database_file.sqlite'
    metadata.bind.echo = True
    

    【讨论】:

    • 那么 metadata.bind 存在于我的 model.py 中,但不在我的代码的控制器部分中。我尝试将该行添加到页面的函数中以更新 rssitems,但它产生了相同的错误
    • @Gekitsuu:在这种情况下,您可能忘记了模型文件底部的elixir.setup_all() 调用。
    • 我的 model.py 底部有 setup_all() 和 create_all()
    • @Gekitsuu:在那种情况下,我真的想不出它不应该工作的原因。只是可能因为其他一些长生不老药进口或其他原因而无法正常工作,但这只是一个疯狂的猜测。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-27
    • 2011-07-18
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多