Есть ли эквивалент Phoenix для Rails Console
Я просто изучаю Phoenix и Elixir, и я родом из Ruby/Rails, где я работаю в REPL с помощью pry
для проверки состояния моей базы данных и приложения.
Я пытаюсь понять, как взаимодействовать с моей базой данных и моделями в приложении Phoenix. Я знаю iex
, но я не знаю, как использовать его, проверяя базу данных приложений из repl. Нужно ли мне подключаться к нему с помощью ecto каждый раз из repl? Существует ли эквивалент rails console
. Я проверил документы Phoenix, Elixir Dose и Ecto repo, но не могу найти то, что я ищу. Я что-то пропустил?
Изменить. Основываясь на ответе ниже, я нашел этот раздел ecto docs. Исходя из этого, я могу сделать что-то вроде ArticlesApi.Repo.all ArticlesApi.Article
Ответы
Ответ 1
Вы можете запустить iex -S mix
для запуска iex
с включенными зависимостями в текущем проекте микширования. Вы можете прочитать об этом в http://elixir-lang.org/getting-started/mix-otp/introduction-to-mix.html
Оттуда вы можете выполнить запросы Ecto:
iex> MyApp.Repo.all(MyApp.User)
Запуск iex -S mix phoenix.server
также запустит сервер phoenix.
Ответ 2
Для отладки времени выполнения (например, byebug
или debugger
или pry
в рельсах) используйте
require IEx
в верхней части модели или файла контроллера или представлений, введите
IEx.pry
, где вам это нужно, чтобы остановить во время выполнения и продолжить отладку.
Введите h
для справки внутри консоли
Самое главное, что после этого перезапустите сервер с помощью
iex -S mix phoenix.server
Дополнительная информация: здесь