2013-04-29 18 views
8

Form_for etiketi kullanıyorum ve Rails 3.0.4 ortamında çalışıyorum. Ancak projemi Rails 4'e güncellemeye çalıştığımda aşağıdaki hatalarform_for raylar için yanlış argüman sayısı 4

yanlış sayıda argüman (3 için 2) verir. İşte kodum

<%= form_for @email, :url => alerts_path do |f| %> 
    <% end %> 
+0

Sadece <% = form_for @email do | f | %> <% end %> –

+1

Ayrıca bunu denedim, yukarıda belirttiğim aynı hatayı aldım. –

+0

Kontrolör kodunu göster bana .. –

cevap

0

Sizin yazım hatası doğru. şöyle değiştirmeyi deneyin:

<%= form_for(@email, url: alerts_path) do |f| %> 
    #form fields goes here 
<% end %> 

Ben Raylar 4.0 API form_for için kaynak kodu herhangi bir değişiklik olup olmadığını görmek için çalıştı; Hala aynı. Eğer istisna geri izleme sonrası can

, bu

+0

Yardımlarınız için teşekkürler, ama bu çözümü denedim, Bana aynı yanlış sayıda argüman hatası veriyor. –

+0

@ZeeshanMahmood: "url" ile birlikte "method:: post" eklemeyi deneyin ve kontrol edin. – kiddorails

+0

Ayrıca bunu denedim ama aynı zamanda bana yardımcı olmadı. –

23

Görünümdeki nesneleri değiştirmeyi deneyebileceğiniz şeyler kaldırmaya çalışın. Benim durumumda

sorun client_side_validations gem ile bu yardımcı olur

Umut oldu. neden yok, ama benim Gemfile gelen "meta_search" mücevher çıkarmadan

+0

Teşekkür ederim. Tanrı seni korusun! – ck3g

+2

sorun neydi? Bunu nasıl çözdün? – coorasse

+0

Bu, belgelenmiştir ve üzerinde düzeltilmiştir: https://github.com/DavyJonesLocker/client_side_validations/issues/603 Ben sadece Gemfile github işaret etmek için değiştirildi ve sorunu düzeltildi – Tigraine

9

emin değil misiniz bu sorunu google Eğer 4.

siz "client_side_validations de ilişkilendirir bu GitHub issue bulabilir Ruby on benim için tam sorunu giderilmiştir "gem, ancak bu repo önerilen" raylar-4-hızlı-fixes "dalını kullanarak benim için sorunu çözmedi.

ben bile form_for inşa Rails kullanarak aynı hatayı başlamıştı ve ne olursa olsun ben aslında her iki yönteme geçirilen kaç argüman arasında wrong number of arguments (3 for 2) başlamıştı olarak simple_form_for ile hata, bir kırmızı ringa olduğunu düşünüyorum.

meta_search 2 Şubat 2012 tarihinden bu yana yeni bir sürüme sahip değil, bu yüzden sadece gemide bir şeyin Raylar 4 ile güzel davrandığını varsaymam mümkün değil. Sorunun ne olduğunu özellikle keşfedersem, bunu güncelleyeceğim Cevap. Meta_search'i "kullanmayı bırak" yapmak zorunda kalıyor gibi görünüyor, ama şimdiye kadar sunabileceğim kadar. Teşekkürler!

+0

Teşekkürler tomurcuk, bu benim –

+1

ah : -/Biz ActiveAdmin kullanıyoruz ve meta_search bir bağımlılık. Yani AA tutmak istiyorsak Rails 4'e yükseltme yapamıyoruz? – sixty4bit