【问题标题】:How to keep typing in the terminal after 'python manage.py runserver' in Django?如何在 Django 中的“python manage.py runserver”之后继续在终端中输入?
【发布时间】:2020-08-09 00:05:02
【问题描述】:

我一直在跟踪this Django 教程,直到 28:36 分钟,老师使用了一个在终端上显示为 ^C(trydjango) $ 的快速快捷方式,允许他继续输入在他runserver之后ma​​kemigrations

当我尝试在 python manage.py runserver 之后在终端中输入时,回车按钮不会提交命令,而是输入到换行符让我卡住。我不确定如何继续本教程,因此我们将不胜感激。

【问题讨论】:

  • 事实并非如此。他使用了Ctrl+C(这是^C停止服务器的由来)。
  • 命令末尾的$在后台启动进程
  • 所以当你想'makemigrations'你必须停止服务器这样做?

标签: django macos terminal


【解决方案1】:

允许他在运行服务器后继续输入以进行迁移。

那是不是的情况。他用Ctrl+C(这是^C停止服务器的由来)。

Ctrl+C [wiki] 是一个序列,它将向正在运行的进程引发SIGINT signal [wiki],告诉它您希望它中断。然后大多数进程会尝试停止运行(例如在执行一些任务以存储程序状态之后)。

但是,在许多终端中,您可以使用多个选项卡,其中一个选项卡用于运行服务器,而其他选项卡用于检查文件、数据库等。在 Mac OS X 终端模拟器上,您可以使用 + T,而在 LXTerminal 和许多其他 Linux 终端仿真器上,你可以使用 Ctrl + Shift kbd> + T.

【讨论】:

  • 所以当你想'makemigrations'你必须停止'runserver'才能这样做?
  • @ismodes:在 Youtube 教程中它确实发生了。我认为您可以同时使用多个选项卡/终端来执行此操作,但是由于重新启动服务器不会花费太多时间,因此无论如何它可能不会让您更快地工作。
  • 啊,好吧,这是有道理的。因此,服务器是否正在运行(runserver)或者它是否不是“makemigrations”都没有关系,对吧? 'makemigrations' 独立于 'runserver' 还是两者之间可能存在冲突?
  • @ismodes:通常不会,因为它是一个独立的进程,会检查差异并相应地制作迁移文件。
【解决方案2】:

怎么样,

您只需要打开第二个终端,然后让那个终端继续运行。 如果您使用的是 VSCode 或 PyCharm,则只需单击底部终端旁边的加号并添加另一个。

【讨论】:

    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 2020-11-28
    • 2020-02-27
    • 2016-01-13
    • 1970-01-01
    • 1970-01-01
    • 2015-11-10
    相关资源
    最近更新 更多