ruby-on-rails - معنى - لغة روبي pdf




القضبان: تحقق من إخراج مساعد المسار من وحدة التحكم (4)

بامكانك ايضا

include Rails.application.routes.url_helpers

من داخل جلسات وحدة التحكم للوصول إلى المساعدين:

url_for controller: :users, only_path: true
users_path
# => '/users'

تعرّف القضبان مجموعة من السحر باستخدام المسارات المسماة التي تساعد المساعدين على الطرق الخاصة بك. في بعض الأحيان ، خاصة مع المسارات المتداخلة ، يمكن أن يكون مربكًا قليلاً لتتبع عنوان URL الذي ستحصل عليه لاستدعاء طريق معين لمسار المسار. هل من الممكن ، باستخدام وحدة التحكم Ruby ، ​​معرفة الرابط الذي ستولده وظيفة مساعد معينة؟ على سبيل المثال ، عند إعطاء مساعد مسماة مثل post_path (post) ، أريد أن أرى عنوان URL الذي تم إنشاؤه.


تذكر ما إذا كان مسارك متوقفًا على الاسم ، مثل:

product GET  /products/:id(.:format)  spree/products#show

ثم حاول :

helper.link_to("test", app.spree.product_path(Spree::Product.first), method: :get)

انتاج

Spree::Product Load (0.4ms)  SELECT  "spree_products".* FROM "spree_products"  WHERE "spree_products"."deleted_at" IS NULL  ORDER BY "spree_products"."id" ASC LIMIT 1
=> "<a data-method=\"get\" href=\"/products/this-is-the-title\">test</a>" 

يمكنك دائمًا التحقق من إخراج path_helpers في وحدة التحكم. مجرد استخدام المساعد مع app

app.post_path(3)
#=> "/posts/3"

app.posts_path
#=> "/posts"

app.posts_url
#=> "http://www.example.com/posts"

يمكنك عرضها مع rake routes مباشرة.

في وحدة تحكم Rails ، يمكنك الاتصال بـ app.post_path . سيعمل هذا في Rails ~ = 2.3 و> = 3.1.0.





ruby-on-rails