روبي على القضبان تمر من المعلمات بين وجهات النظر من link_to الوسم بدلا من submit_tags (وجود كل من في الصفحة)

StackOverflow https://stackoverflow.com/questions/1814481

سؤال

أنا خلق في صفحة الفهرس من روبي على القضبان برنامج قائمة الأكثر شيوعا بحثت عن المصطلحات في قاعدة بيانات ومن ثم في كل مرة يقوم المستخدم بتحديد فئة معينة هذا هو كتابتها إلى قاعدة بيانات أخرى.

ما أود أن إنشاء ارتباط تشعبي وتمرير كمية معينة من المعلمات إلى نموذج مثل وعادة ما يتم مع select_tag ولكن بدلا من ذلك مع ارتباط تشعبي أود أن تمر مجموعة من الحقول المخفية التي لدي على الصفحة وكذلك ما قام المستخدم بتحديده.

لتعطيك فكرة أفضل في الأساس علي البنية التالية في البرنامج:

مدخلات المستخدم البحث على (index.html.erb), ينقر المستخدم على تقديم الوسم إجراءات المستخدم إلى search.html.erb صفحة يتم عرض مجموعة من المكرر فئات + بعض المجالات ، زر إرسال ،

المستخدم إلى closest.html.erb (الذي يستخدم المعلمات من النموذج السابق من خلال التذرع params[:searchSelected] وعدد قليل آخر من params.)

وأود أيضا أن إضافة هذه الوظيفة:Mimick هذه العملية نفسها ولكن بدلا من الذهاب في search.html.erb, أنا النقر على الفعل المكرر البحث فئة على index.html.erb صفحة (من link_to نقل كما المعلمات التي link_to اختيار المستخدم + الخفية المجالات.

لدي حاليا هذا الرمز

@stats.each do
|scr|%>
<%= link_to scr.category,  :action => 'closest', :id => scr.category%>

لست متأكدا إذا كان هذا هو ذات الصلة ، ولكن لدي حاليا الطرق التالية في بلدي routes.rb الملف

 map.resources :stores, :collection => { :search => :get }

 map.connect ':controller/:action/:id'
 map.connect ':controller/:action/:id.:format'

أن أي شخص الرجاء مساعدتي من فضلك ؟ هذا هو أول روبي على القضبان المشروع أود حقا أن تجد طريقة للتغلب على هذا من فضلك

هل كانت مفيدة؟

المحلول

وأنا لست متأكدا إذا كان هذا هو ما كنت أفكر، ولكن يمكنك إضافة معلمات إضافية إلى العلامة LINK_TO. ثم هم متوفرة في جهاز تحكم. لذلك:

<%= link_to scr.category,  :action => 'closest', :id => scr.category, :other_param => "test" %>

وسوف تكون متاحة في وحدة التحكم الخاصة بك.

def closest
  params[:other_param] == "test" #this will be true
end

نصائح أخرى

وتمكنت من حل هذا عن طريق اتخاذ params[:id] ثم وفقا لقيمة إما تعيين القيم الخاصة بي (بدلا من تلك المخفية في index.erb التي كنت قد تعيين يدويا على أي حال) وغير ذلك، ومواصلة كان كالعادة أنا وضعت بحث منتظم

عرض:

<%= link_to obj.ptc_devicename ,"/wiuconfig/hd?idval=#{obj.id.to_s}&val=#{@devicetype}",:value => obj.ptc_devicename,:id =>obj.id %><br/>

تحكم:

@Heading= params[:val] 
@id=params[:id]

سوف تكون القيمة معرف 2 ، فال هو @devicetype

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top