2010-04-23 13 views
10

Rakefile'm belirli bir ada sahip bir görev bulamazsa, eksik görev adına sahip bir dosya varsa, belirli kurallara göre bu ada göre yeni bir görev oluşturmak için rake olmasını isterim. Ama eğer yapmazsa, varsayılana geri dönmek istiyorum ("Nasıl yapılacağını bilmiyorum 'foo'!").Komisyon görevleri için bir "method_missing" var mı?

Özetle, Rake için method_missing var mı?

+1

Mümkünse bunu nasıl yapacağınızı bilmek isterim. Bence method_missing'in aramayla ilgili doğru şey olduğunu sanmıyorum. Rake görevler için gerçekten isimleri değil yöntemleri arar. Bir "task_missing" kancası gibi geçersiz kılabileceğiniz bir şey olsaydı daha uygun olurdu, ancak kodun küfür incelemesi böyle bir şey göstermiyor. –

cevap

11

Denemedim, ancak hızlı arama this ortaya çıktı. Boş bir dize ile bir kural tanımlarsanız

, sen başka yerde tanımlanmış edilmediğini herhangi bir görev yakalayabilirsiniz. Bu , dinamik olarak komisyon görevlerini oluşturmayı kolaylaştırır. Aslında, bu komisyon için method_missing var!

rule "" do |t| 
    t.name 
    # ... do something with the name of the task 
end 
+0

benim için mükemmel çalışıyor – opsb

+0

Bu harika çalışıyor. Bir kuraldan/lib klasöründeki hiçbir şeye erişemem dışında. – CarlosCervantes

İlgili konular