Я так понял он при первом вызове компилирует и потом только использует. Но если вызвать с другим набором аргументов, скомпилирует снова уже под новую модель
Раньше же высказали правильную теорию - борьба с диалайзером это.
Не подскажу название проверки, но она ругает, если не проверяется результат возврата функции. ЕМНИП, даже если результат возврата - :ok - что по спекам, что по факту (коду)
Не совсем понимаю, как грамотно обрабатывать исключения. При обработке данных для сохранения в changeset валидаторы выкидывают ошибку. Её нужно хэндлить через try/catch при вызове build(data) |> Repo.insert? или нужно позволить упасть вызывающему серверу? Поискал на гитхабе проекты по запросу elixir umbrella, но в них не нашел ничего про трай кетчи вроде. Типа "Ебанет? Не должно"
Не совсем понимаю, как грамотно обрабатывать исключения. При обработке данных для сохранения в changeset валидаторы выкидывают ошибку. Её нужно хэндлить через try/catch при вызове build(data) |> Repo.insert? или нужно позволить упасть вызывающему серверу? Поискал на гитхабе проекты по запросу elixir umbrella, но в них не нашел ничего про трай кетчи вроде. Типа "Ебанет? Не должно"
Можешь пример привести? Они обычно возвращают не валидный changeset
Во первых я думаю что нет, во вторых я не вижу ни одной причины почему я должен писать код си внутри кода для эликсира, если я могу написать обычную нифку с ide, тестами и вот этим всем
Можешь пример привести? Они обычно возвращают не валидный changeset
Вот, к примеру, исключение, которое я получаю при попытке сохранить два объекта с одинаковыми именами. Хотелось бы отловить это и сообщить пользователю о том, что у него ошибка в данных
Вот, к примеру, исключение, которое я получаю при попытке сохранить два объекта с одинаковыми именами. Хотелось бы отловить это и сообщить пользователю о том, что у него ошибка в данных