非同期更新掲示板




leaveword_user_list.rhtml 
----------------------------------------------
<div id="comment" class="comments_list">
<h3 class="feed_header">
<%if @user==session[:user]%>	
<a href="/leaveword_user_list?my=<%[email protected]%>" class="r_option"> </a>
<%else%>
<a href="/leaveword_user_list?user_id=<%[email protected]%>" class="r_option"> </a>
<%end%>
 
</h3>
<%= render :partial => 'box' %>
<div class="box_content" id="leave_words_all">
<%= render :partial => 'list' %>
</div>
</div>

_box.rhtml 
-----------------------------------------------
<div class="box" id="backbox">
<% form_remote_tag  :url=>{:controller =>'leave_word_new'},:update=>'leave_words_all',:style=>"padding:0 0 0 5px;" do -%>
<textarea name="detail" id="detail" rows="4" cols="60" style="width:98%;"></textarea><br>
<input type="hidden" name="from_user_id" value="<%=session[:user].id%>" />
<input type="hidden" name="to_user_id" value="<%[email protected]%>" />
<input type="hidden" name="to_list" value="<%=session[:user].id%>" />
<%if @back_box%>
<input type="hidden" name="back" value="1" />
<input type="submit" id="commentsubmit_btn" name="commentsubmit_btn" class="submit" value=" "  />
<%else%>
<input type="submit" id="commentsubmit_btn" name="commentsubmit_btn" class="submit" value=" "  />
<%end%>
    <input type="checkbox" name="quale"> 				 
<%end%>
</div>

_list.rhtml
-----------------------------------------------

<% for leave_word in @leave_words %>
<%from_user=User.find(leave_word.from_user_id)%>
<div>
	<div>
		<a href="show_friend?user_id=<%=from_user.id%>" class="login_thumb">			
			<%=picture_head(from_user)%>					
		</a>		
	</div>
	<div>
		<div><%=from_user.nickname%>&nbsp;<%=leave_word.time.strftime('%Y-%m-%d %H:%M' )%></div>
		<div><%if leave_word.back==1%> <%=User.find(leave_word.to_user_id).nickname%>:<%end%><%=leave_word.detail%> </div>
	</div>
  <div style="float: right">
   <%if leave_word.from_user_id!=session[:user].id%>
   <%=link_to_remote " " ,:update=>'backbox', :url=>{:controller=>'back_box',:user_id=>leave_word.from_user_id}%>
   <%end%>
    <%= link_to ' ', { :action => 'destroy', :id => leave_word }, :confirm => 'Are you sure?', :method => :post %>
  </div>
</div>  
<hr/>
<% end %>

controller
---------------------------------------------

 def leave_word_new
    @leave_word = LeaveWord.new
    @leave_word.detail=params[:detail]
    @leave_word.from_user_id=params[:from_user_id]
    @leave_word.to_user_id=params[:to_user_id]
    @leave_word.time=Time.new
    if params[:back]
    @leave_word.back=1
    else
    params[:back]=0  
    end
    if params[:quale]
    @leave_word.back=1
    else
    params[:quale]=0  
    end
    @leave_word.save
    if params[:to_list]
     @leave_words=LeaveWord.find(:all,:conditions=>"from_user_id=#{params[:to_list]} or to_user_id=#{params[:to_list]}", :order =>'convert(time using gbk)desc')
     render :partial=>"list"
    else
     render :text=>"<font color='red'> </font>"
    end

  end

  def back_box# 
    @user=User.find(params[:user_id])
    @back_box=1
    render :partial=>"box"
  end

  def leaveword_user_list
    use_self_or_pass
    @leave_words=LeaveWord.find(:all,:conditions=>"from_user_id=#{@user.id} or to_user_id=#{@user.id}", :order =>'convert(time using gbk)desc')
    usercenter_layout
  end

 。