簡體   English   中英

Rails模型是一個普通的ruby類,可用於在不同的控制器操作之間存儲狀態嗎? 根本沒有活動記錄和無數據庫

[英]Is a Rails Model a normal ruby class that can be used to store state between different controller actions? No active-record and no-database at all

所以我終於開始了解我認為的軌道。 :-)我需要離開標准Model (database)到: ControllerView數據交換流並堅持我自己的業務邏輯非數據庫類作為模型。 我有幾個問題。

  1. 我認為模型是數據庫表的ORM。 但這些模型是否只是可用於存儲狀態的常規java類? 因為我需要使用一個不會基於活動記錄的基本ruby類。 我打算用它來存儲不同控制器動作之間的狀態。

  2. 我知道我們不能在其他控制器操作之間共享控制器實例變量(@two = 2)。 但是,如果我在一個控制器方法中創建一個常規非數據庫ruby模型類的實例,並改變對象變量的屬性。 如何在另一個控制器方法中使用該對象引用?

對上述兩個問題的一個很好的徹底解釋對我來說太有用了,我要去參加一個派對! :-)

先感謝您!

Rails中的模型就像數據訪問對象,因此您可以擁有支持模型的數據庫或支持持久性的api。 模型是保持狀態的常規類,但僅限於當前請求的生命周期。 因此,一旦請求通過呈現視圖或重定向到另一個頁面,您的數據就會消失。

您可以將模型對象存儲在會話中,cookie中或瀏覽器的本地存儲中,這不需要數據庫后端。 根據您的應用程序的需要,它可能會為您服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM