Bu CodeIgniter'daki Form Doğrulama Özel Callback Yöntemleri etiketleri Çoklu Dize Aradeğerleme Uygula olası mı?

2 Cevap php

İşte benim geçerli kod yaklaşık bir formu var; CodeIgniter 1.7 kullanarak sorunun temel aşağı kesilmiş:

system/application/config/form_validation.php, ben aşağıdaki gibi görünen bir kural var içinde:

'some_controller/save' => array(
    array(
        'field' => 'some_code',
        'label' => 'Some Code Name',
        'rules' => 'trim|required|min_length[1]|max_length[6]|callback__unique_codename'
    ),
),

system/application/controllers/some_controller.php, ben yukarıdaki doğrulama kuralı tarafından gerekli özel arama fonksiyonu var içinde:

function _unique_codename($codename)
{
    $result = $this->some_code_model->find_by_codename($codename); // this returns NULL if the codename is not found
    if ($result)
    {
        $this->form_validation->set_message('_unique_codename', '%s already exists. Please enter another %s.');
        return FALSE;
    }
    else
    {
        return TRUE;
    }
}

Form gönderilmesinden sonra bir hata oluşur. Aşağıdaki Görüntülenen hatadır: ".. Bazı Kod Adı zaten var başka giriniz"

Birden hata mesajında ​​% s örnekleri değerlendirmek için herhangi bir yolu var mı?

2 Cevap

Eğer sadece sağ some_code alanında _unique_codename bitiyor? ise şu durumda,% s birden çok örneği ne demek istiyorsunuz?

Eğer bir döngü içinde bu çalışmasına ve aynı anda görüntülenecek bütün hataları toplamak istiyorsun?

Ben SVN 1.7.2 indirmeden öneriyoruz. Bu form_validation sınıfıyla ilgili çeşitli hataları giderir.