[英]Ruby on rails super simple signup page
我如何能夠在軌道上制作帶紅寶石的注冊頁面?
就像,我有一個測試頁面,用戶輸入他們的電子郵件地址,然后我可以將它添加到數據庫。
此外,我可以向他們發送確認他們注冊的電子郵件
編輯:我想要一些非常簡單的東西。 就像,只是在數據庫中簡單地添加一行簡單。 我不需要密碼框和用戶名框,因為這更加復雜了。 我是初學者,所以我喜歡簡單的事情。
在終端:
$ rails new foobar
$ rm public/index.html
$ git init
$ git commit -m "Initial commit"
$ rails g scaffold subscription email:string
打開你的編輯器:
# app/models/subscription.rb
class Subscription < ActiveRecord::Base
validates :email, :presence => true # optionally validate format of email
end
# app/controllers/subscriptions_controller.rb
class SubscriptionsController < ApplicationController
def new
@subscription = Subscription.new
end
def create
@subscription = Subscription.new params[:subscription]
if @subscription.save
# queue a task to send a confirmation email (see below)
Resque.enqueue(SendConfirmationEmail, @subscription.email)
redirect_to root_path, :notice => 'Thanks for signing up.'
else
render :new
end
end
end
您可以從SubscriptionsController中刪除所有其他方法/操作,並且可以通過使用以下資源限制subscriptions
資源上可用的操作來清理routes.rb
resources :subscriptions, :only => [:new, :create]
。
這並沒有真正涵蓋如何發送電子郵件。 有很多方法可以做到這一點,最佳做法是不在請求/響應流程中將其發送以提高性能/響應能力。 我在那里排隊等待Resque工作,但你可以輕松地在那里添加DelayedJob或其他延遲/異步處理工具。
這是在Rails中很容易做到的事情,你不需要任何額外的寶石。 以下是您需要執行的步驟:
<form method="POST">...</form>
),其中包含一個文本框( <input type="text" .../>
)和一個提交按鈕( <input type="submit" />
)。 Rails有各種幫助方法可以幫助你制作那些HTML標簽,但如果你不想這樣做,就不必使用它們。 動作可以非常簡單:
def create_signup
Signups.create! :email => params[:email]
end
這有意義嗎? 現在我已經給了你一般指南,你應該能夠提出更多關注你不知道該怎么做的特定部分的新問題。 您還應該搜索網絡,因為可能有適用於所有這些步驟的教程。
我為此做了一個應用程序。 Launchrock提供了一個很好的解決方案,但是如果你有兩種類型的用戶,那么你就會受到沖擊。 我們未來的網站將有多種類型的用戶,我們想記錄他們的類型。 所以我們制作了一個應用程序,它在Github上供全世界使用和改變。 :D Fork並克隆回購以使其成為您自己的回購。 我也包括了社交插件。 它沒有風格,你必須改變一些東西以滿足你的需求,但我試着記下README.rd中的那些。
這個問題太寬泛了,無法回答代碼本身,但這里有一些很棒的鏈接可以指出你正確的方向:
設計(最常見的Rails身份驗證和注冊插件):
https://github.com/plataformatec/devise
設計教程:
http://railscasts.com/episodes/209-introducing-devise
梅勒教程:
http://railscasts.com/episodes/206-action-mailer-in-rails-3
其他Auth教程:
http://railscasts.com/episodes/250-authentication-from-scratch
http://railscasts.com/episodes/270-authentication-in-rails-3-1
你可以看看'Devise'寶石 -
https://github.com/plataformatec/devise
關於'Devise'的Railscasts劇集
http://railscasts.com/episodes/209-introducing-devise
優秀的“Rails教程”還將引導您從頭開始構建注冊/身份驗證系統 -
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.