연결이 이미로드되어 있는지 확인하는 데 사용할 수있는 기능은 무엇입니까? 연결을 사용하려고 시도하고 Ecto.Association.NotLoaded
오류가 발생하는 대신 연결이로드되었는지 확인하는 것이 좋습니다.연결이로드되지 않았는지 확인하는 방법은 무엇입니까?
assoc
defmodule PreloadCheck do
def is_preloaded(model, assoc) do
case Map.get(model, assoc) do
%Ecto.Association.NotLoaded{} -> false
_ -> true
end
end
end
이 연결 이름을 나타내는 원자 같습니다가이 확인하기 위해 내장 함수,하지만 당신이 이런 식으로 자신을 쓸 수 있다면
감사합니다. 나는 연관성이리스트인지로드 된 것으로 간주하는지 간단한 점검을하는 함수를 작성한다. 나는 이것을 수행하는 내장 함수가 있기를 바라고 있습니다. –
네,'Ecto.assoc_loaded? ';)를 사용할 수 있습니다.로드 된 상태인지 아닌지에 대한 bool을 반환합니다. 나는 단지 버전 2.1.4 버전의 기능을 사용할 수있는 정확한 길이를 정확히 알지 못한다. –
이 함수는 어디에 쓰이며 모델에 어떤 영향을 미칩니 까? 그게 greate라고 설명 할 수 있다면 –