2016-05-12 75 views
1

在我的鳳凰應用程序中,我需要通過名稱驗證單個字段。我需要這個,因爲我通過ajax機制進行更新,一次只編輯/更新一個字段。驗證Phoenix/Elixir的個人領域?

我該怎麼做?也就是說,給定一個字段名稱,我如何驗證並且只有那個單個字段?請注意,根據我的驗證邏輯,字段的值可能是有效的,即使它爲空也是有效的。

+0

你介意澄清你的問題?你的意思是表單域還是別的?請包含更多信息的相關代碼。 – vikram7

回答

1

我想我正確理解你的問題。

讓我們假設你有一個用戶模型領域姓名,年齡,經驗,每當你想更新/編輯你將發送USER_ID和變化。

在更新的方法,我們將USER_ID得到用戶,並把這種變化和驗證變更(如:User.changeset(Repo.get(用戶,USER_ID),input_change))。正如在其他領域沒有任何變化,硬是要驗證只有一個字段

所以,你可以把你所有的驗證您的變更本身

def changeset(model, params) do 
    model 
    |> cast(params, @required_fields, @optional_fields) 
    |> validate_age 
    |> validate_experience 
    |> validate_name 
end