Skip to content

cannot use relationship named location #327

@btkostner

Description

@btkostner

Having a view like so (minified):

defmodule HalWeb.V2.Inventory.MovementView do
  use HalWeb, :v2_view

  has_one :location,
    serializer: LocationView,
    link: :location_link

  def location_link(movement, conn),
    do: inventory_location_path(conn, :show, movement.location_id)
end

results in an error during compile:

== Compilation error in file lib/hal_web/views/v2/inventory/movement.ex ==
** (ArgumentError) cannot set attribute @location inside function/macro
    (elixir) lib/kernel.ex:2842: Kernel.do_at/5
    (elixir) expanding macro: Kernel.@/1
    lib/hal_web/views/v2/inventory/movement.ex:12: HalWeb.V2.Inventory.MovementView.location/2
    expanding macro: JaSerializer.DSL.location/1
    lib/hal_web/views/v2/inventory/movement.ex:12: HalWeb.V2.Inventory.MovementView.location/2

This was not a problem in 0.13.0, but is in 0.15.0.

OTP: 22
Elixir: 1.8.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions