taj*_*iro 0 elixir phoenix-framework
我想在有效检查后返回,然后转到其他页面(1)。然而,似乎之后,然后呈现索引页面(2)。
def index(conn, %{"id" => id}) do
unless Model.is_valid!(id) do
conn
|> redirect(to: other_path(conn, :other)) #(1)
end
# More process are after this.
render(conn, "index.html") #(2)
end
Run Code Online (Sandbox Code Playgroud)
似乎一次重定向了其他页面,但之后继续进行。我怎样才能像其他语言一样以回程停止?
Elixir没有任何办法可以提早归还。您必须使用unless/ else或if/ else:
def index(conn, %{"id" => id}) do
unless Model.is_valid!(id) do
conn
|> redirect(to: other_path(conn, :other)) #(1)
else
# More process are after this.
render(conn, "index.html") #(2)
end
end
Run Code Online (Sandbox Code Playgroud)
如果您不想增加缩进级别,则最好的办法是创建另一个函数并在else块中调用它。
| 归档时间: |
|
| 查看次数: |
106 次 |
| 最近记录: |