Nerede form verilerini doğrulamak için en iyi yer neresidir?

3 Cevap php

Soru basittir. Nerede mvc tasarım deseni (Zend, Senfoni, CakePHP, Codeigniter) form doğrulama işlemini koymak gerekir. Benim kendi çerçevesi var çünkü ben bu soruyu sormak. I Form doğrulama işlemek nereye Ama karar veremez. Örneğin, ben denetleyicisi eğer ifadeleri yazabilir ama bu denetleyicisi "yağ" yapar, ya da i (Kullanıcı ::) kayıt (,) modeli fonksiyon doğrulama ifadeleri ekleyebilirsiniz. Tabii ki bu çok karmaşık bir şey değil, ama benim amacım onlar kurumsal düzeyde uygulamalar nasıl yaparsınız anlamaktır.

3 Cevap

Eğer. NET dünya çağrı ViewModels biz yerine Domain Modeller (ve ben inanıyorum başka Sunum Modelleri denir) ne gibi MVC Modelleri düşünürsek, model doğrulama / doğrulama eklemek için mükemmel bir yer olurdu.

Bu her yerde Modeli yeniden olan doğrulama mantığını yeniden sağlayacak ve model verileri ile birlikte doğrulama mantığı kapsüllenmesinde olacağından mantıklı. Bu bana yüksek uyum gibi geliyor.

Bir aklı çek olarak, ASP.NET MVC framework de o yönde ilerliyor gibi görünüyor. Sorusuna 'php' etiketli beri bu bilgi son parçası argümanını güçlendirir veya zayıflatır emin değilim.

Doğrulama giriş Kontrol. MVC Model View Controller açılımı, yani doğrulama bir denetleyicisi olmalıdır.

Vs vs isInt (), isStr (), isEmailAddress, isFloat () gibi genel onaylama / bir ana kontrolöre konulmalıdır olabilir. Sonra belirtilen Modeller (veritabanına eşleme) için alt kontrol olabilir. Bu alt kontrol sonra ana kontrolör uzanır.

Doğrulama olabilir birden çok yer vardır.

Birincisi, istemci tarafı sunucu tarafı karşı: sık sık istemci tarafında öncesi doğrulama yapmak için iyi bir uygulamadır tel kadar bitlerini göndermeden önce (örn. "sadece sayılar izin!"). Sunucu tarafı doğrulama her zaman bir güvenlik / veri bütünlüğü gereği olarak zorunludur.

Ön modeli gerekleri karşısında sonlandırmak: ilgili kayıtların sayısı az ise belirli bir alanda 3 değeri mevcut olması gerektiğini bir iş mantığı kuralı varsa belli bir şekli, örneğin, ilgili veri nesneleri modelin ihtiyacına (bilmiyor olabilirsiniz 5) - Bu modeli bilemez tek yer.