39得票1回答
Ecto 中的数据类型 - "值过长,无法适应字符 varying(255) 类型"

错误 22001 (string_data_right_truncation): 值过长,超过字符变量类型限制(255) 我理解(并假设)字符串会有一定数量的字符限制;然而,我不确定这种情况下应该使用什么类型。 在Phoenix框架中,对于博客中的“内容”部分,应该使用什么类型呢?...

39得票2回答
什么是 Phoenix Elixir 中的变更集(changeset)?

我不理解模型中的changeset,它是什么?一个模型可以有多个changeset吗?例如,一个用于创建,另一个用于更新。 能否简单地解释一下,以帮助其他人了解Phoenix。

39得票1回答
在Elixir中将Ecto模型编码为JSON

我正在阅读以下教程,试图理解Elixir和Phoenix: https://thoughtbot.com/blog/testing-a-phoenix-elixir-json-api 在测试时遇到了问题,主要是在Contact模型上使用Poison.encode!。 我收到以下错误:una...

38得票6回答
修改Ecto中的外键

我有这个原始的迁移,已经运行并发送到上游:create table(:videos) do add :url, :string add :title, :string add :description, :text add :user_id, references(:users...

38得票3回答
如何使用Ecto构建包含WHERE IN数组子句?

如何在给定的ID列表中查找帖子? 这个不起作用:posts = Post |> where(id: [1, 2]) |> Repo.all Rails 中的示例:Post.where({ id: [1, 2]}) # SELECT * FROM posts WHERE id IN...

38得票2回答
为什么在 Ecto 查询中需要使用 pin 运算符?

在Elixir中,引用操作符(pin operator)被用于防止变量重新绑定。然而,在处理类似于Ecto查询的时候,需要注意:from u in User, where: u.username == ^username 记住,^ 运算符(称为锚定运算符)意味着我们想要保持 ^usern...

34得票2回答
在 Ecto 仓库中计算条目数量

如何快速查看我的数据库中有多少条记录?我希望在我的文章/posts索引视图中看到文章的数量。 假设我有一个Post模型和一堆保存在我的数据库中的文章。在Rails中,我可以在一个视图文件中像这样做:<h1><%= @posts.length %> Posts</...

34得票2回答
Ecto中的多对多关系

我有一个Users模型和一个Chats模型。直观地,同时有多个人属于同一聊天组,在任何时候每个人都可以有多个聊天组。因此,聊天组必须属于多个user_id。 我的聊天组和用户的架构如下:schema "chatGroups" do field :name, :string h...

31得票1回答
如何在Ecto中更改字段类型?

我有一个架构:schema "editables" do field :title, :string field :content, :string timestamps end 现在我想把一个字段的类型从:integer更改为:binary,使用add不起作用,...

29得票4回答
Ecto Postgres安装错误密码验证失败。

我使用 digital ocean 的 hello 示例创建了一个 Phoenix 项目。我输入了 etc/motd.tail 文件中的用户名和密码,但是始终收到以下错误消息。作为一个初学者,某些原因导致我无法正确安装 Ecto。 ** (Mix) 无法创建 Hello.Repo 数据库,原...