Если поле не требуется, вы должны удалить его из validate_required .
Таким образом, ваша функция изменения должна стать
def changeset(%User{} = user, attrs) do
user
|> cast(attrs, [:email, :cpf, :name, :phone_number, :password])
|> validate_required([:email, :password])
|> validate_format(:email, ~r/^[A-Za-z0-9._%+-+']+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/)
|> validate_format(:cpf, ~r/([0-9]{2}[\.]?[0-9]{3}[\.]?[0-9]{3}[\/]?[0-9]{4}[-]?[0-9]{2})|([0-9]{3}[\.]?[0-9]{3}[\.]?[0-9]{3}[-]?[0-9]{2})/)
|> validate_cpf(:cpf)
|> unique_constraint(:email)
|> unique_constraint(:cpf)
|> unique_constraint(:phone_number)
|> update_password_hash()
|> update_activation_code()
end
Могу порекомендовать:
Он более подробный, чем help
и, самое главное, содержит несколько примеров для каждой команды. Пример: FIND. Есть также перекрестные ссылки на другие команды.
Для автономного чтения вы можете захватить страницы, используя, например, Wget (или какой-нибудь другой инструмент, который может следовать по ссылкам и вниз по содержанию). Я использую двоичный файл Bart Puype Wget для Windows.
(Есть аналогичный инструмент для PowerShell: "Индекс A-Z команд Windows PowerShell".)
.Хиты Google, для "окон обрабатывают документацию по сценариям в пакетном режиме" - первая страница:
Вот 8 страниц PDF, которые можно распечатать: Win32 Shell, Пишущий сценарий Учебного руководства.
Можно всегда смотреть на справку команды путем ввода одного из:
<command> /?
help <command>
И видеть полный список пакетных команд по умолчанию Вы просто вводите:
help
Кроме того, можно искать команды в Windows Help. Просто нажмите на "Start"-> "Help and Support", затем ищите "cmd ссылку", и Вы получите страницу "Command-line reference A-Z" в Соответствиях Полнотекстового поиска. Это - полный список всех команд cmd (часть только доступного в сценариях пакетной обработки) и другие приложения командной строки.
Рассмотрите использование PowerShell вместо этого, если Вы можете. Больше питания, меньше головных болей. Это - способ будущего, мудрого сценариями.
Вы кажетесь, что у Вас есть большое изучение перед Вами. Если Вы сделаете то изучение в PowerShell вместо пакета, то Вы будете в лучшем положении в конце.
Хотя это полезно для изучения пакета, иногда использование пакета может быть довольно хлопотным, особенно когда речь идет о таких вещах, как скринчинг номеров, парсинг текстовых файлов, парсинг HTML и т.д., и т.д. и т.п. Лучше также вооружиться знаниями в области скриптинга с использованием таких языков, как Perl и Python. В оригинале вы также можете научиться использовать VBScript/JScript. Вот руководство, которое можно скачать и прочитать в автономном режиме.