2016-04-13 31 views
0

Bu gibi benim module.config.php dosyasında rota:ZF2'deki konsol yollarında kısıtlamalar nasıl kullanılır?

'route' => 'cronupdate[/:id][/]', 
'constraints' => array(
    'id' => '[0-9]+', 
), 

ama: Aşağıda gibi kısıtlamaları kullanılarak, normal yolları bizim de var gibi

'console' => array(
     'router' => array(
      'routes' => array(
       'updatecron' => array(
        'options' => array(
         'route' => 'cronupdate', 
         'defaults' => array(
          'controller' => 'Application\Controller\Cron', 
          'action' => 'update' 
         ) 
        ) 
       ) 
      ) 
     ) 
    ) 

Şimdi bu eyleme dinamik değeri geçmesi gerekiyor Çalışmıyor ve hata atıyor.

'console' => array(
     'router' => array(
      'routes' => array(
       'updatecron' => array(
        'options' => array(
         'route' => 'cronupdate <id>', 
         'constraints' => array(
          'id' => '[0-9]+', 
         ), 
         'defaults' => array(
          'controller' => 'Application\Controller\Cron', 
          'action' => 'update' 
         ) 
        ) 
       ) 
      ) 
     ) 
    ) 

Ama aynı zamanda çalışmıyor: googling ederken böyle ZF2 github issues aşağılarında bir yolunu buldu. Lütfen bunu nasıl gerçekleştirebileceğimi önerin.

Not: - Konsol işlevini kullanmama neden olan exec işlevini çağırmam gerekiyor.

+0

Bu, kimlik yazmanın yoludur: ''route' => 'cronupdate [/: id]',' – Unex

+0

Siz şöyle yazdınız: "Google ziyaret ederken ZF2'de bir yer buldum" * ... Nerede buldunuz? bu? Bir referans eklemek iyi olurdu. Resmi belgelerin bu yönlendirmeyi önerdiğini hayal bile edemiyorum. Güzergah kimliği @Unex yazdı gibi tanımlanmalıdır ... – Wilt

+0

@Wilt Sorularımdan resmi belgelerde bir şey bulduğumdan emin değilim ve lütfen kullanıcının birçok durumda https için çalışmasını onayladığı bağlantıyı kontrol edin: //github.com/zendframework/zf2/issues/6316 – Ritesh

cevap

0

Yorumda rota kimliği konusunda yanıldım. Konsol rotaları için doğru yaptın!

Sorunun, constraints konsol yolları için desteklenmediği gerçeğinde olduğunu söyleyebilirim. En azından bu yolla ilgili herhangi bir belge bulamadım ve here in the console rout docs da konsol rotalarına kısıtlamalar eklemekten bahsetmezler ...

Ayrıca, konsol yollarına kısıtlamaların eklendiği herhangi bir kullanıcı durumunu da görmedim. Neden olmasın diye emin değil misin? Belki GitHub'u resmi ZF2 deposunda sormak ve/veya bir özellik talebi yapmak ilginç olabilir.