假設我有模型xyz.rb和模型abc.rb.它們之間沒有關係。如果想在abc views/print/show.html.erb中打印來自xyz的任何屬性?Ruby Rails的基本問題
我知道很基本但是很好的解釋。
假設我有模型xyz.rb和模型abc.rb.它們之間沒有關係。如果想在abc views/print/show.html.erb中打印來自xyz的任何屬性?Ruby Rails的基本問題
我知道很基本但是很好的解釋。
當然可以。
假設@x是Xyz模型的一個實例,您可以打印@x對象的任何屬性。
如果你沒有@x對象。您可以在abc控制器的show動作中找到它並實例化@x。例如@x = Xyz.first。
您可以從任何控制器,視圖或幫助程序方法訪問任何模型。 Mvc表示模型,控制器和視圖是相關的,但它們之間的訪問沒有限制。正常的事情。將它們存儲在任何控制器的報告實例變量,然後輸出視圖:
#print_controller.rb
def show
@reports = Report.find_by_some_attribute(...
#show.html.erb
<%- @reports.each do |report| -%>
<%= report.created_at -%>
<%- end -%>
我真的覺得,雖然你需要找到學習軌道的更好方法。這是非常基本的,就像你說的,我會建議你買一本書。你會說英語嗎,或者你的母語是什麼?
我說阿拉伯語,我的英語很爛! – user659068 2011-04-28 13:52:10
你的英語絕對比我的阿拉伯語好。 :)我不知道是否有任何良好的阿拉伯語軌道資源。你可以做的是看看railscasts.com。他們使用英文,但您可以按照「腳本代碼」的方式工作,您會發現每個教程都提供了源代碼。我認爲看其他人的代碼是最好的學習方法之一。 – mark 2011-04-28 13:57:40
考慮你的例子,如果你有兩個模型User和Report。您可以從用戶的控制器訪問Report的created_at,查看等。 你需要寫這樣的事:
Report.find_by_created_at("2013-11-12 14:43:44.11824")
你可以參考Ruby on Rails的指南,瞭解軌道。你還可以找到基本的活動記錄的解釋here
這很基本的,但我給最好的解決這個
def show
@reports = Report.where(:attribute => value)
end
it will get the all records basic on that value
<h1>views/abc/show.html.erb</h1>
<% @reports.each do |report| %>
<%= report.attribute_name %>
<%end%>
你真的不得不多放一點精力投入到解釋你的問題。 :) – mark 2011-04-28 13:32:43
對不起。假設我有用戶和報告,並且想要在user/show.html.erb中顯示報告的created_at。有幫助嗎? – user659068 2011-04-28 13:36:55
今後,嘗試比「Ruby Rails的基本問題」有更好的問題標題。我們知道它是Ruby on Rails,因爲這些標籤,堆棧溢出中的所有內容都是一個問題,因此您不需要在問題標題中出現「問題」。 – 2011-04-28 23:11:23