基本 Flask:添加有用的功能

2024-04-13

我编写了一个在终端中运行的 python 脚本,并使用 Flask 将其移植到网络上。我已经完成了教程的部分内容(具体来说:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world)

我正在为将我在 Python 脚本中使用的所有函数放置在何处而苦苦挣扎。作者()使用此代码进行基本视图:

def index():
    user = {'nickname': 'Miguel'}  # fake user
    posts = [  # fake array of posts
        { 
            'author': {'nickname': 'John'}, 
            'body': 'Beautiful day in Portland!' 
        },
        { 
            'author': {'nickname': 'Susan'}, 
            'body': 'The Avengers movie was so cool!' 
        }
    ]
    return render_template("index.html",
                           title='Home',
                           user=user,
                           posts=posts)

问题是我没有一个函数可以调用。我有 15 个左右,看起来 Flask 只允许我为每个视图调用一个函数。所以我不太确定将我的“主”函数将调用的所有辅助函数放在哪里。

以作者的示例代码为例。如果我有一个函数getPosts()返回一个 post 对象数组,我应该把它放在哪里?

即使我被允许将其放在路线的主要功能下(我认为无论如何都是不允许的),这样做似乎是一个糟糕的组织。

Edit:

这是我的views.py 文件:

  1 from flask import Flask
  2 app = Flask(__name__)
  3 from flask import render_template
  4 from app import app
  5 from app import helpfulFunctions
  6
  7 def testFunction():
  8     return 5;
  9
 10 @app.route('/')
 11 @app.route('/index')
 12 def index():
 13     #allPlayers = processGender(mainURL, menTeams)
 14     myNum = testFunction()
 15     return render_template('index.html', title = 'Home', user = user)

您并不局限于每个视图只能使用一个功能——您可以拥有任意数量的功能。

from flask import Flask
app = Flask(__name__)

def f():
    ...
def g():
    ...
@app.route('/index')
def index():
    <here you can use f and g>
    ...

函数不需要对应于视图——只需要对应@app.route(...)装饰器让它做到这一点。

如果您有大量其他函数,将它们放在另一个文件中也没什么坏处。然后你可以import文件并按上述方式使用它们。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基本 Flask:添加有用的功能 的相关文章

  • 如何在 Windows 64 上安装 NumPy?

    NumPy 安装程序在注册表中找不到 python 路径 无法安装 需要 Python 2 5 版本 但在注册表中未找到该版本 OK 我必须修改注册表吗 我已经修改了 PATH 以指向Python25安装目录 我可以检查一下您使用的是什么安
  • 用缺失的日期填充其他列 Nan Pandas DataFrame

    我实际上是从几个 Excel 文件中提取数据来监控我的每日卡路里摄入量 我设法使用列表理解来生成日期 我尝试使用合并或连接 但它不起作用 ValueError 您正在尝试合并对象和 float64 列 date list 2021 05 2
  • 补丁 - 为什么相对补丁目标名称不起作用?

    我已经从模块导入了一个类 但是当我尝试修补类名而不使用模块作为前缀时 出现类型错误 TypeError Need a valid target to patch You supplied MyClass 例如 以下代码给出了上述错误 imp
  • Pandas:GroupBy 到 DataFrame

    参考这个关于 groupby 到 dataframe 的非常流行的问题 https stackoverflow com questions 10373660 converting a pandas groupby object to dat
  • 检查 Python 中的可迭代对象中的所有元素的谓词是否计算为 true

    我很确定有一个常见的习语 但我无法通过谷歌搜索找到它 这是我想做的 用Java Applies the predicate to all elements of the iterable and returns true if all ev
  • Flask wtf.quick_form 运行一些 javascript 并设置表单变量

    我正在创建博客文章 到目前为止已经使用普通的 html 表单完成了 我所做的一个有趣的想法是运行 javascript onclick 并使用页面中的额外数据在表单中设置一个隐藏变量 这很好地传递到服务器并通过 request form 获
  • 搜索多个字段

    我想我没有正确理解 django haystack 我有一个包含多个字段的数据模型 我希望搜索其中两个字段 class UserProfile models Model user models ForeignKey User unique
  • Python新式类和__subclasses__函数

    有人可以向我解释为什么这有效 在 Python 2 5 中 class Foo object pass class Bar Foo pass print Foo subclasses 但这不是 class Foo pass class Ba
  • pytest:同一接口的不同实现的可重用测试

    想象一下我已经实现了一个名为的实用程序 可能是一个类 Bar在一个模块中foo 并为其编写了以下测试 测试 foo py from foo import Bar as Implementation from pytest import ma
  • 通过索引访问Python字典的元素

    考虑一个像这样的字典 mydict Apple American 16 Mexican 10 Chinese 5 Grapes Arabian 25 Indian 20 例如 我如何访问该字典的特定元素 例如 我想在对 Apple 的第一个
  • 用 python 编写的数学语法检查器

    我需要的只是使用 python 检查字符串是否是有效的数学表达式 为了简单起见 假设我只需要 运算符 也作为一元 带有数字和嵌套括号 为了完整性 我还添加了简单的变量名称 所以我可以这样测试 test 3 2 1 valid test 3
  • Anaconda 无法导入 ssl 但 Python 可以

    Anaconda 3 Jupyter笔记本无法导入ssl 但使用Atom终端导入ssl没有问题 我尝试在 Jupyter 笔记本中导入 ssl 但出现以下错误 C ProgramData Anaconda3 lib ssl py in
  • 动态过滤 pandas 数据框

    我正在尝试使用三列的阈值来过滤 pandas 数据框 import pandas as pd df pd DataFrame A 6 2 10 5 3 B 2 5 3 2 6 C 5 2 1 8 2 df df loc df A gt 0
  • Elasticsearch 通过搜索返回拼音标记

    我用语音分析插件 https www elastic co guide en elasticsearch plugins current analysis phonetic html由于语音转换 从弹性搜索中进行一些字符串匹配 我的问题是
  • 在 Django 查询中使用 .extra(select={...}) 引入的值上使用 .aggregate() ?

    我正在尝试计算玩家每周玩游戏的次数 如下所示 player game objects extra select week WEEK games game date aggregate count Count week 但姜戈抱怨说 Fiel
  • Django Admin 中的反向内联

    我有以下 2 个型号 现在我需要将模型 A 内联到模型 B 的页面上 模型 py class A models Model name models CharField max length 50 class B models Model n
  • 混淆矩阵不支持多标签指示符

    multilabel indicator is not supported是我在尝试运行时收到的错误消息 confusion matrix y test predictions y test is a DataFrame其形状为 Horse
  • 双击打开 ipython 笔记本

    相关文章 通过双击 osx 打开 ipython 笔记本 https stackoverflow com questions 16158893 open an ipython notebook via double click on osx
  • 使用ssl和socket的python客户端身份验证

    我有一个 python 服务器 需要客户端使用证书进行身份验证 我如何制作一个客户端脚本 使用客户端证书由 python 中的服务器使用 ssl 和套接字模块进行身份验证 有没有仅使用套接字和 ssl 而不扭曲的示例 from OpenSS
  • 查找总和为给定数字的值组合的函数

    这个帖子查找提供的 Sum 值的组合 https stackoverflow com a 20194023 1561176呈现函数subsets with sum 它在数组中查找总和等于给定值的值的组合 但由于这个帖子已经有6年多了 我发这

随机推荐

  • org.dbunit.dataset.NoSuchTableException,但表存在

    H2 1 4 191 数据库单元 2 5 1 如何解决这个问题 3种情况的代码和结果 org dbunit dataset NoSuchTableException category org dbunit dataset NoSuchTab
  • 为什么我的 wss://(基于 SSL/TLS 的 WebSockets)连接立即断开而不给出任何错误?

    将此发布给遇到同样问题的其他人 我当时正在开发一个浏览器客户端 它使用 stanza io 连接到 XMPP 服务器 在我的例子中是 Prosody 我默认使用 wss 连接 在开发过程中的某个时刻 我的客户端根本无法连接 它会立即无提示地
  • iphone 4.0 以编程方式发送短信

    我正在开发一个简单的应用程序 在其中我需要以编程方式向我的朋友发送短信 所以编写下面的代码来发送短信 MFMessageComposeViewController picker MFMessageComposeViewController
  • 比较 2 个对象数组并删除重复项

    我在 JavaScript 中有 2 个对象数组 想要比较和合并内容并按 id 对结果进行排序 具体来说 生成的排序数组应包含第一个数组中的所有对象 以及第二个数组中具有不在第一个数组中的 id 的所有对象 以下代码似乎有效 减去排序 但必
  • 派生类的初始值设定项列表

    我想要一个派生类 它有一个默认构造函数来初始化继承成员 为什么我可以这样做 class base protected int data class derived public base public derived note data 4
  • wcf 服务不允许 POST

    一般来说 我对 Web 服务还很陌生 并且 我认为 陷入了配置 IIS 和 Web 服务本身的困境 我在 MVS 2010 中创建了一个 wcf Web 服务 并将其托管在 Windows 7 上的 IIS7 5 上 我使用soapUI 4
  • 使用 BCEL 生成的解析字节码确定对象之间的传出耦合(CBO 指标)

    我已经构建了一个程序 它接受提供的 class 文件并使用 BCEL 解析它 我现在已经学会了如何计算 LCOM4 值 现在我想知道如何计算类文件的CBO 对象之间的耦合 值 我已经搜索了整个网络 试图找到关于它的正确教程 但到目前为止我还
  • Gracefull python joblib 杀死

    是否有可能优雅地杀死一个joblib https github com joblib joblib处理 线程后端 并且仍然返回到目前为止的计算结果 parallel Parallel n jobs 4 backend threading r
  • Facebook 对话框、注销和访问令牌(Facebook iOS SDK)

    当使用这样的代码创建 Facebook 对话框时 NSMutableDictionary params NSMutableDictionary dictionaryWithObjectsAndKeys apiKey api key nil
  • Apple Mac 和 Unix 时间戳

    我知道Apple系统上的主要时间戳是CF绝对时间值 也称为Mac绝对时间 它是根据自01 01 2001 00 00 00 UTC以来的秒数计算的32位整数 例如 219216022 解码后为 Thu 13 December 2007 05
  • 在 Objective C 中格式化浮点数

    我需要将浮点数 吸引人的标题 他 格式化为小数点后两位 但前提是这些小数位的值不为零 例子 我有一个名为 answer 的 NSTextField 在使用几个浮点进行一些数学运算后 我想将 answerFloat 变量分配给 answer
  • 无法正确设置PrintArea

    我正在使用 phpspreadsheet v1 3 1 我正在构建一个 Excel 文件 下载 一切正常 唯一的问题是定义 setPrintArea 它总是将标准 PrintArea 返回到 excel 中 基本上 我构建了 Excel 行
  • 根据特定参数值显示或隐藏 SSRS 列

    我无法根据所选参数值显示 隐藏列 我的报告是如何设置的 参数 ImportStatus ImportStatus 参数有三个值可供选择 M V E 如果我选择 ImportStatus value M 那么我希望报告显示特定列 目前 如果我
  • 如何通过扬声器而不是较弱的耳机扬声器播放音频?

    我正在学习核心音频 由于某种原因 处理图的声音仅通过弱 耳机 播放 当您将设备放在耳边时 而不是通过 iPhone 的常规扬声器播放 这是设置音频会话的代码 但我看不到它在哪里配置音频路由 void setupAudioSession AV
  • PivotTable.js 有条件地更改文本颜色

    所以我正在使用 PivotTable js 它对工作有很大帮助 但现在 我正在尝试获取一个过滤器来根据值更改单元格的颜色或单元格内的字体 例如 如果我的数据集中有一个日期数组 dates N A 4 12 2016 7 9 2024 7 9
  • Python 类输入参数

    我是面向对象编程的新手 我的想法是实现以下课程 class name object name def init self name print name 然后的想法是创建该类的两个实例 person1 name jean person2 n
  • JSF 国际化 f:loadbundle 或通过 faces-config:性能点

    有两种方法可以将属性文件加载到 JSF 2 0 中 全球资源包 全局加载属性文件 以便所有jsf页面都可以访问消息 您可以创建一个 faces config xml 文件并显式声明属性文件 面孔配置 xml
  • 使用java进行HTML解析[重复]

    这个问题在这里已经有答案了 可能的重复 可以解析 HTML 文档并构建 DOM 树 java https stackoverflow com questions 1433250 possible to parse a html docume
  • BufferedImage.getGraphics().drawImage() 改变像素值

    这是一个后续previous https stackoverflow com questions 23707736 strange bufferedimage behaviour with 4bits palette问题 标准推荐的改造方式
  • 基本 Flask:添加有用的功能

    我编写了一个在终端中运行的 python 脚本 并使用 Flask 将其移植到网络上 我已经完成了教程的部分内容 具体来说 http blog miguelgrinberg com post the flask mega tutorial