一个简单的查询看起来像这样
User.query.filter(User.name == 'admin')
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我需要检查正在传递的参数,然后根据该参数从数据库中过滤结果。
例如,如果User表包含诸如用户名,位置和电子邮件之类的列,则request参数可以包含其中之一,也可以具有列的组合。我不想创建如下所示的每个参数并链接过滤器,而是创建一个动态查询字符串,该查询字符串可以传递给一个过滤器并返回结果。我想创建一个单独的函数,该函数将评估所有参数并生成查询字符串。一旦生成查询字符串,我就可以传递该查询字符串对象并获得所需的结果。我想避免使用RAW SQL查询,因为它违反了使用ORM的目的。
if location:
User.query.filter(User.name == 'admin', User.location == location)
elif email:
User.query.filter(User.email == email)
Run Code Online (Sandbox Code Playgroud) 我正在使用Python,Django和MySql开发Web应用程序.我在应用程序中有一个规定,用户可以上传*.wmv和*.mov文件,系统将处理这些文件并将其转换为*.mp4.我使用的是单一服务器架构,但随着用户群的增长,视频转换占用了90%的内存.我正在考虑使用Amazon EC2在云上移动视频转换/流媒体服务器,以便使用Redis和Celery在不同的服务器上进行转换.我想知道Redis - Celery是否支持多层架构.如果有人成功实现了这一目标,请告诉我相应的步骤.这将是真正有用的,因为我谷歌搜索,但找不到任何支持文档.