【发布时间】:2018-09-23 12:37:46
【问题描述】:
我写了一个插件,我想在两个或多个控制器中使用。
对于第一个控制器,参数 %{params: %{“param1” => param01, “param2” => param02}} = conn 中有两个变量,对于第二个控制器,只有一个变量 %{params: %{“param1” => param01} = conn。
我在插件中使用%{params: %{“param1” => param01, “param2” => param02}} = conn 进行模式匹配。当请求到达第二个控制器时,它会抛出 (MatchError) no match of right hand side value:。
我想要一个可以优雅地处理这两种情况的模式匹配。有没有办法为 第二个控制器 将 param02 设置为 nil 而不会出错。
提前感谢您的回答。我刚开始学习 Elixir/Phoenix 框架,对它还是很陌生。
【问题讨论】: