etimologia docs elixir phoenix-framework ecto

elixir - docs - ecto etimologia



Cuente el nĂºmero de entradas en un repositorio de Ecto (2)

Las opciones que Dogbert ha proporcionado son correctas y deben usarse para Ecto 1.x.

En Ecto 2.0 puedes usar Repo.aggregate/4

Repo.aggregate(Post, :count, :id)

¿Cuál es la forma más rápida de ver el número de entradas en mi base de datos? Me gustaría ver el número de publicaciones en mis publicaciones / vista de índice.

Digamos que tengo un modelo de publicación y un montón de publicaciones guardadas en mi base de datos. En Rails podría hacer algo como esto en un archivo de vista:

<h1><%= @posts.length %> Posts</h1>

o

<h1><%= @posts.size %> Posts</h1>

o

<h1><%= @posts.count %> Posts</h1>

¿Cuál es el equivalente de Phoenix Framework / Elixir?


Si ya ha cargado las publicaciones en la memoria en su controlador usando Repo.all , puede usar length/1 para contar el número de elementos en la lista. Esto es equivalente a .length en Ruby / Rails.

length(@posts)

Si desea ejecutar la consulta de conteo en la base de datos, puede hacer:

Repo.one(from p in Post, select: count("*"))

También puede agregar where: filter a la consulta para restringir las publicaciones, por ejemplo, creadas por un usuario específico. Esto es equivalente a hacer .count en Rails.