Symfony2 ile, normal ifadeleri kullanarak tek bir Denetleyici Eylemi için birden çok URL modeli tanımlamak mümkün mü, bu yüzden birkaç kural tanımlamamız gerekmiyor mu? Teşekkür peşinsymfony2 tek bir Controller için birden fazla url modeli kullanın Normal ifadeyi kullanan bir Action Action (Eylemi)
cevap
Gereksinim duyduğunuz yer tutucuları mı kastediyorsunuz?
blog:
pattern: /blog/{page}
defaults: { _controller: AcmeBlogBundle:Blog:index, page: 1 }
requirements:
page: \d+
Burada, bir yer tutucu tarafından tanımlanan ve aynı denetleyici eylemine giden normal ifadeler tarafından doğrulanan birden çok rota vardır.
Düzenleme:
url her bölümü bir yer tutucu olabilir.
blog:
pattern: /{type}/{page}
defaults: { _controller: AcmeBlogBundle:Blog:index, page: 1 }
requirements:
type: blog|articles
page: \d+
Ek açıklamaları kullanırken birden fazla rota tanımlayabilirsiniz. Bunun gibi:
/**
* @Route ("item1")
* @Route ("item/2")
* @Method("GET")
*/
public function itemAction() {
}
Ben parametrelerle rotalar için 2.0.9
Bu gerçekten ilginç, ben bir _Action_ hemen önce tanımlanmış ilgili rutinleri sahip olma fikrini seviyorum, ama ben tüm kontrolörlerimde benim yönlendirme kurallarını yaymak yerine her şeyi bir _routing.yml_ içinde tutmayı tercih ediyorum – svassr
Muhtemelen app/konsolu açın, yönlendiriciyi unutma: tüm rotalarınızı görmek için hata ayıklama komutu. Ek açıklamaları kullanırsanız, varsayılan olarak rotalarınız için anlamlı isimler alırsınız, bu nedenle denetleyiciyi bulmak oldukça kolaydır. – cvaldemar
Birden çok demet kullandığınızda tüm rotaları tek bir dosyada tutmak mümkün değildir (ana uygulama 'routing.yml 'kaynağında rota olarak eklediğinizde), bu gerçekten yönlendirme için bir argüman değildir. Ek açıklamaların kullanımı kolaydır, kolay hata ayıklanabilir ('yönlendirici: hata ayıklama ') ve yapılandırılabilir (örneğin kendi adınızı şu şekilde ayarlayabilirsiniz:' @Route ("/", name = "homepage") '). – Wirone
Açıklamalar örnek Versiyon kullanıyorum:
{{ path('shops_town') }}
:
/**
* @Route("/shops/{page}", name="shops")
* @Route("/shops/town/{town}/{page}", name="shops_town")
* @Route("/shops/department/{department}/{page}", name="shops_department")
*/
public function shopsAction(Town $town = null, Department $department = null, $page = 1)
{ ... }
Sonra böyle dal rotayı oluşturmak
veya
{{ path('shops_town', {'town': town.id}) }}
veya
{{ path('shops_department', {'department': department.id}) }}
- 1. asp-controller ve asp-action öznitelikleri çalışmıyor
- 2. Hiçbir yol eşleşmiyor {: action => "destroy",: controller => "users"}
- 3. WordPress Spam açık? Action = register URL
- 4. Mvc'de bir Action yöntemini nasıl geçersiz kılarsınız?
- 5. Bir anahtar bulmak ve değerini değiştirmek için normal ifadeyi kullanın
- 6. Farklı URL modeli ile tek bir Servlet nasıl kullanılır?
- 7. 'action' adlı formdaki bir girdi, formun action özelliğini geçersiz kılar. Bu bir hata mı?
- 8. jquery alma eylemi eylemi url
- 9. Action adına farklı eylem adı
- 10. Action Controller: Özel durum yakalandı - turbolinks sorunu var mı?
- 11. Ember.js {{action}} tıklaması dışında,
- 12. <insert action = ">
- 13. Birkaç Action <T>'u C# içindeki tek bir Action <T> ile nasıl birleştiririm?
- 14. Başa Dön Filtreyi atla Action eylemi global olarak kaydediliyor eylem
- 15. Tek bir uygulamada birden fazla Firebase veritabanı kullanın - Swift
- 16. .action extension ... bu nedir?
- 17. FullCalendar, ASP.NET MVC3 Action
- 18. Form action = "" ile form action = "." Arasındaki fark nedir?
- 19. Action Çubuk Fragmanı Etkinliği
- 20. Bir normal ifadeyi nasıl derleriz?
- 21. Böyle bir URL kullanmak gerekir normal ifade
- 22. Action() 'dan nasıl değer döndürülür?
- 23. Tek bir sed komutuyla birden fazla yedek
- 24. url, Parse düğmesi eylemi için
- 25. Gönderme düğmesi nasıl algılanır, tek bir Action sınıfında birden çok gönderme düğmesinin senaryosunda tıklanır?
- 26. F # içinde bir Action <T> nasıl oluşturabilirim?
- 27. Kılmak: action and render: şablon
- 28. Tek bir URL parametresi için birden çok değer nasıl iletilir?
- 29. PlayFramework 2.2 Java Action Bileşimi
- 30. Raylar sınamak: assert render action
@svassr cevap – ilanco
güncellenen ne omittable türü var isterseniz? Örneğin:/posts/sport/2', "posts/sport", "posts/2" için bir yolu nasıl tanımlarsınız. Bu yüzden genel rota: '/ posts/{category}/{page}', ancak - belli ki - sadece varsayılan değerlerle çalışmaz. Symfony'a ikinci paramın string/int olup olmadığını nasıl anlayacağını söylemenin bir yolu var mı? –