2017-06-09 14 views
0

私は、ユーザーが電子メール、SMS、whatsappを使ってボタンをクリックすることで、他の人に独特のリンク(他の人を招待するはがき)を送ることができる。Rails:ボタンをクリックしたときにデータベースレコードを作成する

<a href="mailto:?subject=Postcard for you!&body=You received a nice postcard! Check it out here: <%= u @sending_url %>"> 
    <button class="btn btn-large btn-default">Send card to a friend via email</button> 
</a> 

アプリは、カード内のボタンは、「電子メールを介して友人にカードを送る」と人々はそれをクリックしたときに、自分の電子メールアプリケーションが開き、彼らはリンクを送ることができると言う方法を示していますリンク/ URL @sending_urlは、ヘルパーメソッドによって作成され、inviter_id(現在のユーザーのID)とトークン(@トークン)の2つのパラメータで構成され、SecureRandom.uuidによって生成されます。私のアプリはこのようなルックスを生成したリンク:

https://chaos-jadz.c9users.io/cards/3?inviter_id=1&token=b39f0488-de54-431e-a261-4da2feae6012

私は今、何をしたいかは、次のとおりです。ユーザーがこのボタンをクリックするとアプリは、電子メールアプリを開くだけでなく、店のトークンでなければならないだけでなく、データベース。したがって、私は持っている:

token.rb

create_table "tokens", force: :cascade do |t| 
    t.string "token" 
    t.datetime "created_at", null: false 
    t.datetime "updated_at", null: false 
    end 

私の質問は今

class Token < ActiveRecord::Base 
end 

schema.rb: はどのように私は私のショーでボタンを実装することができます。一度クリックしたカードのhtml.erbは、(カードの表示方法で生成された)トークンをデータベースに保存し、同時にユーザーの電子メールアプリですか?

答えて

1

inviter_id(例: - >/users/1/invites)でサーバーへのリンクを作成すると、invites_controllerにはデータベースに保存したトークンを使用してユーザーを電子メールのアプリリンクにリダイレクトします。

関連する問題