具有相对路径的Elixir/Phoenix文件上载文件夹
我在URL提示下引用了 我有同样的问题。我想知道为什么我不能将上传的文件移动到dest文件夹。 在绝对路径的情况下,它工作。 如何设置相对路径设置 上传_controller.ex具有相对路径的Elixir/Phoenix文件上载文件夹,elixir,phoenix-framework,Elixir,Phoenix Framework,我在URL提示下引用了 我有同样的问题。我想知道为什么我不能将上传的文件移动到dest文件夹。 在绝对路径的情况下,它工作。 如何设置相对路径设置 上传_controller.ex defmodule MyAppWeb.UploadController do use MyAppWeb, :controller def create(conn, %{"user" => user_params}) do IO.inspect user_params if uploa
defmodule MyAppWeb.UploadController do
use MyAppWeb, :controller
def create(conn, %{"user" => user_params}) do
IO.inspect user_params
if upload = user_params["photo"] do
extension = Path.extname(upload.filename)
# It worked.
# File.cp(upload.path, "/Users/myaccount/MyApp/priv/static/media/profile#{extension}")
# It didn't work.
case File.cp(upload.path, "media/profile#{extension}") do
{:ok, _result} ->
conn
|> put_flash(:info, "File Uploaded successfully.")
|> redirect(to: upload_path(conn, :index))
{:error, _result} ->
IO.inspect(_result)
conn
|> put_flash(:info, "File Uploaded failed!!.")
|> redirect(to: upload_path(conn, :index))
end
end
end
endpoint.ex
plug Plug.Static,
at: "/", from: :fish_pot, gzip: false,
only: ~w(css fonts images js favicon.ico robots.txt)
#Added
plug Plug.Static, at: "/uploads", from: "media/"
我想在
priv/static/media
中上传文件。IO.inspect返回:enoint
它到底是如何失败的?你尝试了什么?很抱歉我没有及时回复。请检查pwd.pwd显示项目根路径File.cp(upload.path,“priv/static/media/profile{extension}”)
。但这是正常的方式吗?