0

这是我正在尝试做的事情的概述:

  • 我正在从 GSM 调制解调器读取数据,并将其存储在数据库中。

  • 我正在使用 Python 脚本和 MySQL 数据库执行此操作。

  • 所以这里 Python 只是一个后端,我想使用 HTML 文件创建一个前端。这将稍后在服务器上运行。(我想为 HTML 文件创建一个特定的“外观”。)

那么我是不是先创建 HTML 文件,然后将其与 Python 链接呢?请注意,Python 脚本使用实时数据填充数据库。

还是我在 Python 本身中创建这个 HTML 文件?我是否能够实现我想要的网页感觉。

我还将在 HTML 页面中有一些选项。选择其中一个选项时,Python脚本需要能够对其进行反应并在GSM调制解调器上发送消息。那么我可以让 HTML 开始运行 Python 脚本吗?

我该怎么做才能实现上述目标?

4

1 回答 1

3

您基本上需要的是MVC(模型视图控制器),其不同的组件是:

  1. 模型:包含数据的 MySQL 数据库
  2. 查看:您的 HTML 前端
  3. 控制器:您的主要逻辑所在的位置,例如当点击 UI 上的某些内容时向调制解调器发送什么命令,或者从数据库中提取哪些数据并在 UI 中绘制

Web 框架是要走的路。对于一个非常简单的项目(你想在不到一个小时内完成),web.pyflaskbottle会很好。对于更详细的内容,您可能需要使用Django

这些中的每一个都允许您创建自己的 HTML 文件并使用一些模板方案和控制逻辑与后端进行通信。

我通常在前端和后端之间进行通信的方式是使用 AJAX 查询。这种方法的优点是,如果您决定更改底层框架,您的 UI 代码将保持不变。

现在让我们做一个示例任务:用户选择一个特定的命令发送到 GSM 调制解调器并等待响应,如果它成功与否。

  1. 在 UI 上,您可以发送包含命令信息的 AJAX POST 或 GET 请求。让我们假设它类似于“AT”,因此您决定将其发布到您在路由信息中定义的 URL,让它成为 /execute
  2. 现在与该路由条目对应的函数被执行,它将检索参数,即“AT”,将使调制解调器理解必要的数据包并将其发送并从调制解调器获得一些响应
  3. 函数返回此响应,控件返回 UI
  4. 在 UI 中,您可以使用代码来显示您想要执行的任务的状态

您可以类似地从数据库中提取数据。

于 2013-04-25T06:12:08.453 回答