سؤال

أقوم فقط بترقية تطبيقي إلى Rails 3 وبما أنه يتعين علي إعادة كتابة التوجيه الخاص بي على أي حال، فأنا أستغرق بعض الوقت لتحسين المسارات المحددة.

لدي وحدة تحكم في الفواتير تحتوي على إجراء سلة المهملات (/الفواتير/المهملات تسرد جميع الفواتير في سلة المهملات).أريد الوصول إلى هذا من خلال مسار مسمى (أي.trash_url) للبساطة في وجهات نظري.

يمكنني تحقيق ذلك بسهولة بما فيه الكفاية مع ما يلي

match "/invoices/trash" => "invoices#trash", :as => :trash

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

resources :invoices do
  collection do
    get :trash, :as => :trash
  end
end

هل ما أحاول القيام به ممكن أم هل يجب علي تحديد المسار المحدد الخاص بي خارج هذه الكتلة؟

شكرًا.

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

المحلول

الطريقة التي أدرجتها (الموضحة أدناه) تعمل بشكل جيد بالنسبة لي، فهي تولد trash_invoices_path و trash_invoices_url الأساليب المساعدة.

resources :invoices do
  collection do
    get :trash, :as => :trash
  end
end

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

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