簡體   English   中英

Ruby on Rails:腳手架、Model 和屬性

[英]Ruby on Rails: Scaffolding, the Model, and attributes

我有一個奇怪的問題。 假設我使用腳手架創建了一些東西。 這應該會為我構建許多不同的文件,包括 model、視圖和 controller 中的文件。 我不僅傳遞了腳手架的名稱,還傳遞了屬性/字段/變量。 當我查看我生成的腳手架的 model 時,我沒有看到列出的那些屬性。 我很困惑。 Rails 如何知道一個字段是否存在? 我可以在將來將它們更改為不具有某個屬性或添加新屬性嗎?

我為這個問題道歉。 試圖學習這個框架,我感到相當不知所措。 我最初是一名從事小型學校項目的 java 開發人員,我想拓展業務。 我購買並一直在嘗試閱讀我一直聽說的 Agile Web Development with Rails 一書。 這很好,但我仍然對一切如何運作感到相當迷茫。 我是不是太努力理解 Rails 的工作原理了?

謝謝你們!

腳手架是一種生成代碼的方法,否則您將編寫代碼。 生成的代碼只是一個起點,而不是事物的最終版本。

Model:當你搭建腳手架時,你傳入了你現在需要的字段。 Rails 將為您生成 model 和遷移。 當您運行遷移時,它將使用您傳遞的列/字段在 db 中創建表。 Model可以動態判斷表中有哪些字段。

如果將來需要添加/刪除字段,則需要編寫另一個遷移來添加刪除它們,您可以使用rails generate migration

Controller:腳手架生成一個標准的 controller,其中包含 7 個響應靜態資源(您的模型)的操作:新建、創建、編輯、更新、銷毀、顯示、索引。 您可以隨意添加或刪除操作。 如果您添加/刪除操作,您將需要相應地更改路線。

視圖:Rails 腳手架將生成准系統標准視圖,forms 用於您的字段和視圖以顯示這些字段。 您可以根據需要自定義外觀並更改視圖。

我希望它能澄清事情。

腳手架並不是生成代碼的唯一方式。 有特定於 model、遷移和控制器的生成器。

我希望你已經閱讀過 RailsGuides 它們對初學者和熟悉 Rails 的人都非常有幫助。

暫無
暫無

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

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