这是我的控制器代码:
def index(conn, _params) do
customers = Repo.all(Customer)
render conn, "index.json", customers: customers
end
这是“客户视图”中的代码
def render("index.json", %{customers: customers}) do
%{
data: render_many(customers, CustomerAdminView, "customer.json"),
}
end
def render("customer.json", %{customer: customer}) do
%{
id: customer.id,
user: customer.user,
billing_contact: customer.billing_contact
}
end
这将引发内部服务器错误。
在phoenix视图文档中,我的代码与它们提供的示例相同。如果我将index.json
代码更改为此:
def render("index.json", %{customers: customers} = assigns) do
%{
data: render_many(customers, CustomerAdminView,
"customer.json", assigns),
}
end
为什么它将与render / 4一起使用而不与render / 3一起使用?