Je reçois l'erreur suivante: à partir du code suivant: p> CritiqueController P> render(conn, "new.html", changeset: changeset, companies: Accounts.list_companies() |> Enum.map(&{&1.name}))
3 Réponses :
Sociétés = repo.all de C en société, sélectionnez: {C. Nom} P>
Ici, vous sélectionnez seulement Nom P>
Et vous essayez d'accéder à entreprise_id p>
essayer p>
Sociétés = repo.all (société) p>
SALUT! Merci d'avoir chiming. Cependant, je pense que mon dernier commentaire vous a amené loin du problème réel (j'ai supprimé ce commentaire). Mon problème n'est pas en mesure d'accéder correctement à l'assignation @Companies en raison de «dangereux» HTML ou d'énumération. Je pense que vous êtes juste à propos de l'identifiant de la société - je devrais probablement saisir que si j'en ai besoin comme un param :) Changer la requête au fur et à mesure que vous le mentionnez inclut plus d'informations sur la société dans l'erreur d'énumération.
Merci encore à @sanjaykumar - ils étaient partiellement corrects et aidés à me mener dans la bonne direction.
y compris l'identifiant aidé, mais le chargement de l'ensemble du schéma était inutile. Toutes les solutions suivantes fonctionnent: p> ou p> ou, ce que je vais avec: P > companies = Repo.all from c in Company, select: {c.name, c.id}
oui p>
Lorsque nous appelons Repo.All (Société), il chargera toutes les colonnes de la table, elle charge également des métadonnées.Si nous avons une énorme quantité de données, il y aura une question de performance. P>
La 3ème requête que vous avez utilisée, rétablira la liste des colonnes que vous avez requises. Cela va certainement sauver la bande passante. p>