我剛剛發現我無法在cPanel上部署Django,因此我將它轉換爲Ruby on Rails。這是一個小應用程序,用戶可以註冊一個青銅,銀或金包服務。如何將Django應用程序轉換爲RoR?
我正是想這個流程從Django的到回報率轉換:
DJANGO CODE:
網址:
#level is bronze, silver or gold
url(r'^signup/(?P<level>[\w\-]+)/$', views.signup, name="signup"),
觀點:
# subscribe to gold/silver/bronze package
def signup(request, level):
""" when users subscribe to a package """
context_dict = {}
context_dict['level'] = level
return render(request, 'payligent/signup.html', context_dict)
在模板鏈接到註冊頁面的索引頁面與級別(在這種情況下,青銅):
<a href=" {% url 'payligent:signup' 'bronze'%} "><button class="btn btn-success">Get Started</button></a>
這是我迄今爲止的回報率:
的routes.rb:
get 'pricing/:level', :to => 'welcome2#pricing', as: "package_signup"
控制器:
class Welcome2Controller < ApplicationController
def pricing
@package_signup = package_signup.find('bronze')
end
end
查看:
<a href="<%= link_to 'package_signup bronze', package_signup_path(@package_signup) %>"><button class="btn btn-success">Get Started</button></a>
不過,我收到RoR的服務器上此錯誤:
沒有路由匹配{:動作=> 「定價」,:控制器=> 「使用welcome2」, :水平=>零}失蹤必需的鍵:[:級別]
在你的控制器中,'package_signup'是一個模型嗎? –
不,它應該是一個類似於django URL中的「註冊」的URL的名稱:url(r'^ signup /(?P [\ w \ - ] +)/ $',views.signup,name = 「註冊」), –
Seio