gpt4 book ai didi

ruby-on-rails - 无法删除记录,用户

转载 作者:行者123 更新时间:2023-12-04 06:13:59 24 4
gpt4 key购买 nike

我正在尝试使用删除操作进行删除。但每当我点击链接时,我都会转到用户个人资料。

用户 Controller

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

索引用户 View

<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 %>

最佳答案

您很可能正在使用 Rails 3,对吗?这是一个常见问题。在 rails 2.x 中,link_to帮助程序用于创建困惑的内联 javascript 以创建使用适当的 delete 提交的表单打电话(有点,但足以解释这个问题)。

然而,在 Rails 3 中,实际执行此操作的 javascript 已移出 View 本身,移至 javascript 文件中。这被称为“不引人注目的”javascript,其中 HTML 源代码严格用于文档结构,而文档行为存在于其他地方。

底线是您的布局需要在 <head> 中包含这些文件部分,像这样:

<%= javascript_include_tag :all %>

这应该可以解决您的问题。

关于ruby-on-rails - 无法删除记录,用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4394714/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com