نفس جزئية على وجهات نظر متعددة تعود إلى ما عرض كان يطلق عليه من

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

سؤال

وأنا حاليا إعادة استخدام جزئية على اثنين من وجهات نظر مختلفة.

<اقتباس فقرة>   

مشاهدة A

     

مشاهدة B

ووجزئية ينتمي إلى تصميم نموذج لولكن لديه ارتباط مع نموذج B ولذلك فمن الواجب التطبيق لنموذج B أيضا.

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

والسبب أنه الموجهات الآن لعرض لأن هذا هو النموذج ينتمي إلى هذا النموذج. لذلك عندما نشر، يتحدث إلى وحدة تحكم A ويستخدم توجيه تأخذ المستخدم إلى a_url.

وكيف يمكنني معرفة مستواي (أو أكثر من ذلك أن عمل المراقب المالي) لإعادة توجيه المستخدم إلى أين أتوا؟

وشكرا!

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

المحلول

وحلها.

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

مشاهدة كود:

<%= hidden_field_tag 'submitted_from', "#{controller.controller_name}" %>

ورمز تحكم بلادي:

if params[:submitted_from] == 'A'
  redirect_to a_url
else
  redirect_to b_url
end

نصائح أخرى

وبدلا من استخدام علامة خفية، قد ترغب في وضع هذه المشاركة في الدورة:

session[:submitted_from] = new_model_url

وفي عمل آخر ..

redirect_to(session[:submitted_from])
session[:submitted_from] = nil

وانه من السهل جدا على التحول من متغيرات النموذج، في حين أنه قد يكون من الصعب (ولكن ليس من المستحيل) لإقامة الدورة. كنت السير في هذا الطريق لو كان طلبي.

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