簡體   English   中英

將Ruby代碼轉換為Ruby on Rails Web應用程序

[英]Converting Ruby code into Ruby on Rails Web Application

讓我先說一下,我是Ruby和Ruby on Rails的新手,並且未能成功地找到將工作的Ruby程序轉換為由Rails支持的Web應用程序的明確演示。

Ruby部分 :我有一個簡單的類,允許用戶創建一個“棍子”,她可以在其上設置一個螞蟻到任何打開的英寸點,其方向隨機向上/向下移動。 然后,用戶可以調用一個運行命令,看到螞蟻在桿子上下移動直到螞蟻從兩端掉下來。 然后,用戶可以檢查桿上的螞蟻從其上掉下來的最小和最大時間。

Rails部分 :因為這個程序的輸出可以根據螞蟻的初始方向而改變,所以我認為不需要在許多實例上使用數據庫。

問題 :我的模型類是否應該包含我已編寫的所有代碼? 如果我想構建一個簡單的網頁,允許用戶創建一個棒,然后顯示並不斷更新其數組,然后添加每個螞蟻的名稱和位置,我的方法將如何(以及從哪里)寫的是什么?

我可能完全錯了,但我懷疑我的代碼應該在模型包中,並且對我創建的方法的調用將在控制器中。 這意味着我應該確保控制器類中的新方法采用整數(對於大小)。 我還應該編寫一個創建和設置ant的新方法,並接受一個字符串和整數(也在控制器中)。

代碼看起來像:

def new(size)
  @marchingant = Marchingant.new(size)

  respond_to do |format|
    format.html # new.html.erb
    format.json { render json: @marchingant }
  end
end

def createAndSet(loc, name)
  @marchingant.createAndSet(loc, name)
end

(模型類中的方法驗證輸入)感謝您的幫助!

模型包含狀態,控制器控制行為,視圖將數據顯示給用戶。 所以,在這種情況下,你可能應該有一個Ant模型,也許還有Stick模型。 Ant與Stick有關,它的位置應該在Stick的大小范圍內。 因此,在index操作(或者您將其設置為全部的任何位置)上,您將初始化Stick並在用戶與應用程序交互時,使用AJAX實例化新的Ant對象並在屏幕上顯示它們。 我不確定你是如何設想調用createAndSet 有助於更多地了解用戶與您的應用程序的交互。

老實說,我認為Rails根本不需要參與其中。 如果你沒有將它持久化到數據庫並且用戶以后不需要能夠檢索事物的狀態,那么我將用Javascript編寫整個事情。 您可以創建一個Ant和Stick對象,並公開附加到DOM節點的函數,供用戶進行交互。

暫無
暫無

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

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