【问题标题】:missing Phoenix specific mix tasks / generators缺少 Phoenix 特定的混合任务/生成器
【发布时间】:2017-02-23 09:32:42
【问题描述】:

我缺少 Phoenix 特定的混合任务,例如混合phoenix.gen.html

$ 混合帮助 | grep -i 凤凰

mix local.phoenix #本地更新Phoenix

mix phoenix.new # 创建一个新的 Phoenix v1.2.1 应用

$ mix -v

Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

混合 1.3.4

$长生不老药-v

Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

灵药 1.3.4

我已经在我的 Mac 上重新安装了 Erlang、Node、Elixir、Phoenix(使用 brew),但似乎没有任何解决问题的方法。

这是从 Phoenix 应用目录运行它的输出

$ mix phoenix.new hello

$ cd hello

$ ls
README.md       brunch-config.js    deps            mix.exs            node_modules     priv            web _build          config          lib         mix.lock        package.json        test

$ mix -h | fgrep phoenix
mix local.phoenix     # Updates Phoenix locally
mix phoenix.new       # Creates a new Phoenix v1.2.1 application

【问题讨论】:

    标签: elixir generator phoenix-framework elixir-mix


    【解决方案1】:

    除了local.phoenixphoenix.new 之外的所有任务,例如phoenix.gen.html,都只能在 Phoenix 应用程序的目录中使用。如果您从应用程序目录中运行它,您应该在 mix help 中看到它们。

    注意:如果您想在从未编译过的全新应用程序中看到它出现在mix help 中,您必须使用mix compile 编译一次应用程序。如果您直接运行其中一项任务,它将成功,因为mix 将在尝试运行之前编译应用程序。

    在任何应用的目录之外:

    $ mix help | grep phoenix
    mix local.phoenix     # Updates Phoenix locally
    mix phoenix.new       # Creates a new Phoenix v1.2.1 application
    

    在应用程序的目录中(确保通过先运行mix compile 来编译应用程序):

    $ mix help | grep phoenix
    mix local.phoenix        # Updates Phoenix locally
    mix phoenix.digest       # Digests and compress static files
    mix phoenix.gen.channel  # Generates a Phoenix channel
    mix phoenix.gen.html     # Generates controller, model and views for an HTML based resource
    mix phoenix.gen.json     # Generates a controller and model for a JSON based resource
    mix phoenix.gen.model    # Generates an Ecto model
    mix phoenix.gen.presence # Generates a Presence tracker
    mix phoenix.gen.secret   # Generates a secret
    mix phoenix.new          # Creates a new Phoenix v1.2.1 application
    mix phoenix.routes       # Prints all routes
    mix phoenix.server       # Starts applications and their servers
    

    【讨论】:

    • $ mix phoenix.new hello * 创建 hello/config/config.exs ... cd hello $ ls README.md brunch-config.js deps mix.exs node_modules priv web _build config lib mix。锁定 package.json 测试 $ mix -h | fgrep phoenix mix local.phoenix # 本地更新 Phoenix mix phoenix.new # 创建一个新的 Phoenix v1.2.1 应用
    • @user7017138 你必须先编译应用程序。请查看我的编辑。
    • 谢谢Dogbert!编译是缺少的步骤。
    猜你喜欢
    • 2019-09-20
    • 1970-01-01
    • 2017-10-16
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    • 1970-01-01
    相关资源
    最近更新 更多