2013-09-23 22 views
8

Yani görünümünde kırar ben benim modelinde aşağıdaki kurallar: regex html pattern özellik etiketine uygulanan nedenselaravel doğrulama regex,

public static $rules = array(
    'name'   => 'required|alpha_dash|unique:subsidiaries', 
    'internal_number' => 'required|alpha_dash|unique:subsidiaries', 
    'expedition_rate' => array('required', 'regex:/^[0-9]{1,3}(\.?)[0-9]{1,2}$/'), 
    'hundred_kg_rate' => array('regex:/^[0-9]{1,5}(\.?)[0-9]{1,2}$/'), 
    'handling'  => array('regex:/^[0-9]{1,3}(\.?)[0-9]{1,2}$/'), 
    'insurance'  => 'required|numeric', 
); 

Ama ... o sonları!

Sonuç:

<input required="true" pattern="^[0-9]{" class="form-control" ....> 
           _________ 
           \ 
            => This right here should be 
           ^[0-9]{1,3}(\.?)[0-9]{1,2}$ 
+0

Bunu nereden elde ediyorsunuz? Herhangi bir şansla 'Former 'kullanıyor musunuz? – rmobis

+0

@Raphael_ Aslında 'Former' kullanıyorum ... kurallar denetleyiciden – Alex

+0

görünümüne aktarıldı. Bu gerçekten de Laravel değil Former ile ilgili bir sorundur. – rmobis

cevap

0

böyle PHP içinde bir değişken ayrıştırmak için bekliyor bahis ... küme parantezi kaçan deneyin:

$var = 'something'; 
echo 'The value is \{$var\}.'; 
// Outputs: 
// The value is $var. 
: ile

$var = 'something'; 
echo 'The value is {$var}.'; 
// Outputs: 
// The value is something. 

Kontrast bu

Beni şaşırtan kısım, bunların tek tırnak içinde olması ve bu olmamalı. Belki bir Laravel olayı?

+0

Bir regex sözdiziminde küme parantez nasıl olabilir? Bu benim için yeni – Alex

+0

Tüm ters eğik çizgi çift. –

+0

Üzgünüz, sanırım sorunuzu yanlış anladım. Kıvırcık parantezden kaçmak için, sadece \ "... \\\} yapabilmelisiniz. İşlendiğinde, bu ters eğik çizgi olmamalıdır. –

2

Bunu kullanmayı deneyin.

array(
    'field' => 'regex:[a-z]' 
); 

Bu yardımcı olur umarım.