Ant*_*yrd 2 activerecord ruby-on-rails authlogic ruby-on-rails-3
我正在尝试使用删除操作删除.但每当我点击链接时,我只会转到用户个人资料.
用户控制器
class UsersController < ApplicationController
filter_resource_access
# GET /users
# GET /users.xml
def index
@users = User.all
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @users }
end
end
# GET /users/1
# GET /users/1.xml
def show
#@user = User.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @user }
end
end
# GET /users/new
# GET /users/new.xml
def new
#@user = User.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @user }
end
end
# GET /users/1/edit
def edit
#@user = User.find(params[:id])
end
def create
#@user = User.new(params[:user])
@user.channels << Channel.find(1)
respond_to do |format|
if @user.save
format.html { redirect_to(:channels, :notice => 'Registration successfully.') }
format.xml { render :xml => @user, :status => :created, :location => @user }
else
format.html { render :action => "new" }
format.xml { render :xml => @user.errors, :status => :unprocessable_entity }
end
end
end
def profile
@user = User.find(params[:id])
end
# PUT /users/1
# PUT /users/1.xml
def update
#@user = current_user
respond_to do |format|
if @user.update_attributes(params[:user])
format.html { redirect_to(@user, :notice => 'User was successfully updated.') }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @user.errors, :status => :unprocessable_entity }
end
end
end
# DELETE /users/1
# DELETE /users/1.xml
def destroy
@user = User.find(params[:id])
@user.destroy
respond_to do |format|
format.html { redirect_to(users_url) }
format.xml { head :ok }
end
end
def delete
@user = User.find(params[:user_id])
@user.destroy
redirect_to :users
end
end
Run Code Online (Sandbox Code Playgroud)
索引用户视图
<h1>Listing users</h1>
<p id="notice"><%= notice %></p>
<table>
<tr>
<th>Username</th>
<th>First Name</th>
<th>Last Name</th>
<th>Telephone</th>
<th>Email</th>
<th></th>
<th></th>
<th></th>
</tr>
<% @users.each do |user| %>
<tr>
<td><%= user.login %></td>
<td><%= user.first_name %></td>
<td><%= user.last_name %></td>
<td><%= telephone_field_tag :phone, user.telephone ,:disabled => true %></td>
<td><%= email_field_tag :email, user.email, :disabled => true %></td>
<td><%= link_to 'View Profile', user %></td>
<td><%= link_to 'Edit Profile', edit_user_path(user) if permitted_to? :update ,user %></td>
<%if permitted_to? :delete ,user %>
<td><%= link_to 'Close Account', user, :method => :delete, :confirm => "Are you sure?" %></td>
<% end %>
</tr>
<% end %>
</table>
<br />
<%= link_to 'New User', new_user_path %>
Run Code Online (Sandbox Code Playgroud)
你正在使用Rails 3的机会很好,对吧?这是一个常见问题.在rails 2.x中,link_to帮助程序用于创建凌乱的内联javascript以创建使用适当delete调用提交的表单(有点,但对于此解释足够好).
然而,在Rails 3中,实际执行此操作的javascript已被移出视图本身,转换为javascript文件.这被称为"不显眼的"javascript,其中HTML源代码严格用于文档结构,文档行为存在于其他地方.
底线是您的布局需要在<head>部分中包含这些文件,如下所示:
<%= javascript_include_tag :all %>
Run Code Online (Sandbox Code Playgroud)
那应该可以解决你的问题.
| 归档时间: |
|
| 查看次数: |
1311 次 |
| 最近记录: |