我不想自定义 Phoenix Framework 提供的模板,而是想创建一组我自己的模板,并将它们作为自定义混合任务调用。
我可以创建自定义混合任务,但无法弄清楚:
Phoenix Github Issues 上有一个线程与此主题有关,但对要使用的目录路径没有帮助。
对已实现自己的自定义模板的项目的任何建议或指针将不胜感激。
最佳答案
模板的位置当前是 phoenix 源中的 hard coded,因此您将无法指定任意位置。然而,它将首先在当前目录中搜索,然后在 phoenix 源代码中搜索。您唯一需要做的就是在您的应用程序中创建 priv/templates/phoenix.gen.html/
目录。然后您可以覆盖那里的模板。
# create dummy app
$ mix phoenix.new my_app
$ cd my_app
$ mix deps.get
$ mix deps.compile
# override the show template
$ mkdir -p priv/templates/phoenix.gen.html/
$ echo 'TEST <%= 123 %>' > priv/templates/phoenix.gen.html/show.html.eex
# run the generator
$ mix phoenix.gen.html User users name:string
# the show template is now overridden
$ cat web/templates/user/show.html.eex
TEST 123
# other templates are left untouched
$ cat web/templates/user/index.html.eex
<h2>Listing users</h2>
...
关于elixir - 如何创建一组自定义模板并将其集成到 Phoenix Framework (Elixir) 中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33404321/