是否有可能從另一個調用before_filter?我問的原因是因爲我有兩個類似的before_filters,但有一個額外的條件可能仍然是真的。因此,如果第一個before_filter爲true,那麼第二個爲true,但如果第一個爲false,則會檢查另一個條件,然後確定它是true還是false。你可以從Ruby on Rails的另一個before_filter調用一個before_filter嗎?
1
A
回答
1
這是正確的過濾器只是方法,所以要回答你的問題:
是的,這是可以從其他過濾器調用過濾器。
但請注意,您不應呈現或重定向兩次,否則您將收到AbstractController::DoubleRenderError
。因此,如果其中一個過濾器正在渲染,則不應該調用其他過濾器。
使用布爾返回值來管理這個。
-1
如果你不想結合方法我可以做這樣的事情。
before_filter :filter_method
def filter_method
if method_one == true
method_two
end
end
def method_one
# stuff here
end
def method_two
# stuff here
end
0
您可以。 before_filter只是一個調用常規方法的觸發器。該方法可以調用任何其他方法,甚至可以調用其他before_filters方法。
+0
需要注意的是過濾器通常會呈現或重定向。你必須照顧這個。 –
相關問題
- 1. Ruby on Rails的:的before_filter =>:only_when_user_is_logged_in
- 2. ruby on rails 3關於before_filter的問題
- 3. Ruby on Rails,before_filter和prepend_before_filter排序是?
- 4. 使用一個以上的before_filter
- 5. 的before_filter與另一個控制器
- 6. 的Rails的before_filter
- 7. 可以參考Rail的before_filter是另一個類中的方法嗎?
- 8. Ruby on Rails - 另一個Flash
- 9. Rails模型「before_filter」?
- 10. rails,模擬before_filter
- 11. Global rails中的before_filter
- 12. 的before_filter設置常見實例變量(Ruby on Rails的)
- 13. before_filter require_login創建一個無限循環
- 14. before_filter從另一個控制器的方法
- 15. Ruby on Rails:添加before_filter來檢查用戶是否屬於同一組
- 16. Ruby on Rails 2.3.8:params在before_filter中是未定義的?
- 17. Ruby,你可以從同一個方法裏調用一個方法嗎?
- 18. 我可以使用Ruby on Rails渲染一個haml模板嗎?
- 19. 的Rails的before_filter檢查多個角色
- 20. 如何使用Google App Engine做一個Rails風格的before_filter?
- 21. Rails 4:before_filter vs. before_action
- 22. Rails教程:before_filter已棄用
- 23. 回用的before_filter
- 24. Ruby on Rails,從另一個模型創建一個記錄
- 25. 你可以在Ruby on Rails中手動「觸發」回調嗎?
- 26. Ruby on Rails:我可以做一個「link_to」來調用創建操作嗎?
- 27. 調試的before_filter用撬
- 28. 我可以從另一個調用一個js文件嗎?
- 29. Rails 3 - 驗證和:before_filter
- 30. Ruby on Rails - 一個模型可以看到模塊,另一個模型不能?
爲什麼不把兩個過濾器合併成一個方法,用一個過濾器代替它們呢? –
因爲其中一個過濾器是一個特殊的邊緣案例,persay,並且只能從一個控制器動作中調用,而另一個則從多個調用中調用。 – dmastylo