2012-06-28 64 views
0

我正在構建一個具有「分頁」接口的應用程序,它具有一個簡單的文本區域框,一個用於確定我應該「分頁」(發送消息)和提交按鈕。Rails和Ajax入門

我想用Ajax功能來構建它,這樣當我提交頁面時,一個小的div將顯示消息和結果(成功,失敗等)。

我的控制器很簡單,它將有一個索引,新的,創建操作。創建操作應該在頁面上發佈消息,並觸發actionmailer根據在select中選擇的個人發送頁面。

我想我遇到的問題是視圖代碼和jQuery。試圖瞭解這是如何工作,讓我有點困惑,因爲我是新手。

有人可以提供一個可以做這種事情的單頁文章界面的例子嗎?到目前爲止,它看起來像我的代碼是正確的,但我錯過了jQuery的東西和其他的魔法。

這是我到目前爲止有:

paging_controller 
class PagingController < ApplicationController 

    def index 
    @pages = Paging.all 
    end 


    def new 
    @page = Paging.new 
    end 

    def show 
    @page = Paging.find(params[:id]) 

    respond_with @page 
    end 

    def create 
     @page = Paging.new(params[:page]) 

     if @page.valid? 
      PagingMailer.new_message(@page).deliver 
      redirect_to calls_path, notice: "Call was successfully created." 
     else 
      flash.now.alert = "Please fill all fields." 
      render :new 
     end 
     end 

end 

index.html.erb 
<h2>Paging Interface</h2> 


    <div class="form"> 
    <%= render 'form' %> 
    </div> 
    <div class="page"> 
    <%= render 'page'%> 
    </div> 

_form.html.erb 
<%= form_for(@page, :remote => true) do |f| %> 

    <% end %> 

    <div class="field"> 
    <%= f.text_area :message %> 
    </div> 
    <div class="actions"> 
    <%= f.submit %> 
    </div> 
<% end %> 

_page.html.erb 

<%= content_tag_for(:li, page) do %> 
    <p><%= page.body %></p> 
    <span class="age">Posted at <%= time_ago_in_words(page.created_at) %> ago. 
</span> 
<% end %> 

回答