Phoenix Framework를 사용하여 모델에 연결 하시겠습니까?

허 딩거

연결에서 현재 사용자 할당을 사용하여 다 대다 관계를 만들려고합니다. 문제는 모델에서 conn에 대한 액세스 권한이 없다는 것입니다. 변경 세트와 함께 전달해 보았지만 올바른 방법이 아닌 것 같습니다.

이를 처리하는 가장 좋은 방법은 무엇입니까? conn을 모델로 가져올 수 있다고 생각합니다. 그렇게하고 싶지 않은 이유가 있습니까?

지금 내 변경 세트는 다음과 같습니다.

def changeset(model, user, params \\ :invalid) do
    model
    |> cast(params, @required_fields)
    |> put_assoc(:users, [user])
    |> validate_required([:name])
    |> unique_constraint(:name)
end

최신 정보

Steve의 제안으로 끝났습니다. 사용자 ID에 대한 가상 필드를 스키마에 추가하고이 기능을 변경 집합 파이프 라인에 추가했습니다.

  def changeset(model, params \\ :invalid) do
    model
    |> cast(params, @required_fields)
    |> associate_current_user(params)
    |> validate_required([:name])
    |> unique_constraint(:name)
  end

  def associate_current_user(model, params) do
    case params do
      %{"user_id" => id} ->
        user = Repo.get!(User, id)

        model
        |> put_assoc(:users, [user])
      _ ->
        model
    end
  end
스티브 팔렌

현재 user_id를 params에 추가하고 그렇게 처리하지 않는 이유는 무엇입니까? 새 / 업데이트가 웹 양식에서 오는 경우 템플릿에서 current_user를 가져오고 숨겨진 입력을 추가하기 쉽습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Active Directory를 사용하여 Windows 공유에 연결 하시겠습니까?

분류에서Dev

Active Directory를 사용하여 Windows 공유에 연결 하시겠습니까?

분류에서Dev

pandas concat 함수를 사용하여 하위 함수에서 제자리에 연결 하시겠습니까?

분류에서Dev

SSH를 사용하여 Cygwin에서 로컬 Linux 시스템으로 연결 하시겠습니까?

분류에서Dev

Google Colab에서 Python-flask를 사용하여 localhost에 연결 하시겠습니까?

분류에서Dev

UnixODBC 및 FreeTDS를 사용하여 우분투에서 Pervasive SQL 서버에 연결 하시겠습니까?

분류에서Dev

Ubuntu 11.04를 사용하여 노트북을 TV에 연결 하시겠습니까?

분류에서Dev

SSL 인증서를 사용하여 hexchat으로 ZNC 경비원에 연결 하시겠습니까?

분류에서Dev

관리자 연결없이 LDAP를 사용하여 Laravel에서 인증 / 로그인 하시겠습니까?

분류에서Dev

MySql 연결 문자열에 암호를 사용 하시겠습니까? 씨#

분류에서Dev

WSL MySQL에서 MySQL Workbench를 연결 하시겠습니까?

분류에서Dev

Visio에서 셰이프를 연결 하시겠습니까?

분류에서Dev

배열에 새 참조를 연결 하시겠습니까?

분류에서Dev

SockJS 연결에 헤더를 추가 하시겠습니까?

분류에서Dev

Java에서 phoenix를 사용하여 hbase에 연결하기위한 올바른 URL

분류에서Dev

USB 케이블 1 개를 PC와 여행용 어댑터에 모두 연결 하시겠습니까?

분류에서Dev

USB 케이블 1 개를 PC와 여행용 어댑터에 모두 연결 하시겠습니까?

분류에서Dev

NetBeans에서 Slim Framework를 사용하여 Php를 MongoDB에 연결

분류에서Dev

SignalR을 사용하여 WinForm 서버에 연결 하시겠습니까?

분류에서Dev

ssh를 사용하여 Linux 시스템에 연결할 때 iptables 방화벽에서 생성하는 패킷을 숨기거나 무시 하시겠습니까?

분류에서Dev

벡터에 [] [] 연산자를 사용 하시겠습니까?

분류에서Dev

Azure CloudConfiguration 파일에서 연결 문자열을 선택하도록 Entity Framework를 구성 하시겠습니까?

분류에서Dev

"경로 추가"를 사용하여 Wi-Fi 대신 직접 이더넷 연결을 사용하도록 컴퓨터에 알리시겠습니까?

분류에서Dev

V- 모델을 간결하게 연결 하시겠습니까?

분류에서Dev

스레드 액세스를 위해 std :: atomic <int>를 사용하여 프로그램 구조에 안전하게 연결 하시겠습니까?

분류에서Dev

Java를 사용하여 Mariadb에 연결할 수 없습니까?

분류에서Dev

Bluetooth를 통해 USB 장치를 컴퓨터에 연결 하시겠습니까?

분류에서Dev

DotNetRDF를 사용하여 Virtuoso에 연결

분류에서Dev

매개 변수 또는 변수를 사용하여 SSIS에서 연결 시간 제한을 설정 하시겠습니까?

Related 관련 기사

  1. 1

    Active Directory를 사용하여 Windows 공유에 연결 하시겠습니까?

  2. 2

    Active Directory를 사용하여 Windows 공유에 연결 하시겠습니까?

  3. 3

    pandas concat 함수를 사용하여 하위 함수에서 제자리에 연결 하시겠습니까?

  4. 4

    SSH를 사용하여 Cygwin에서 로컬 Linux 시스템으로 연결 하시겠습니까?

  5. 5

    Google Colab에서 Python-flask를 사용하여 localhost에 연결 하시겠습니까?

  6. 6

    UnixODBC 및 FreeTDS를 사용하여 우분투에서 Pervasive SQL 서버에 연결 하시겠습니까?

  7. 7

    Ubuntu 11.04를 사용하여 노트북을 TV에 연결 하시겠습니까?

  8. 8

    SSL 인증서를 사용하여 hexchat으로 ZNC 경비원에 연결 하시겠습니까?

  9. 9

    관리자 연결없이 LDAP를 사용하여 Laravel에서 인증 / 로그인 하시겠습니까?

  10. 10

    MySql 연결 문자열에 암호를 사용 하시겠습니까? 씨#

  11. 11

    WSL MySQL에서 MySQL Workbench를 연결 하시겠습니까?

  12. 12

    Visio에서 셰이프를 연결 하시겠습니까?

  13. 13

    배열에 새 참조를 연결 하시겠습니까?

  14. 14

    SockJS 연결에 헤더를 추가 하시겠습니까?

  15. 15

    Java에서 phoenix를 사용하여 hbase에 연결하기위한 올바른 URL

  16. 16

    USB 케이블 1 개를 PC와 여행용 어댑터에 모두 연결 하시겠습니까?

  17. 17

    USB 케이블 1 개를 PC와 여행용 어댑터에 모두 연결 하시겠습니까?

  18. 18

    NetBeans에서 Slim Framework를 사용하여 Php를 MongoDB에 연결

  19. 19

    SignalR을 사용하여 WinForm 서버에 연결 하시겠습니까?

  20. 20

    ssh를 사용하여 Linux 시스템에 연결할 때 iptables 방화벽에서 생성하는 패킷을 숨기거나 무시 하시겠습니까?

  21. 21

    벡터에 [] [] 연산자를 사용 하시겠습니까?

  22. 22

    Azure CloudConfiguration 파일에서 연결 문자열을 선택하도록 Entity Framework를 구성 하시겠습니까?

  23. 23

    "경로 추가"를 사용하여 Wi-Fi 대신 직접 이더넷 연결을 사용하도록 컴퓨터에 알리시겠습니까?

  24. 24

    V- 모델을 간결하게 연결 하시겠습니까?

  25. 25

    스레드 액세스를 위해 std :: atomic <int>를 사용하여 프로그램 구조에 안전하게 연결 하시겠습니까?

  26. 26

    Java를 사용하여 Mariadb에 연결할 수 없습니까?

  27. 27

    Bluetooth를 통해 USB 장치를 컴퓨터에 연결 하시겠습니까?

  28. 28

    DotNetRDF를 사용하여 Virtuoso에 연결

  29. 29

    매개 변수 또는 변수를 사용하여 SSIS에서 연결 시간 제한을 설정 하시겠습니까?

뜨겁다태그

보관