Javascript ActionController::CareerController中的未知信息#为rails 4创建
我正在尝试初始化js文件,以便在提交表单时弹出“成功消息”。 上面写着,Javascript ActionController::CareerController中的未知信息#为rails 4创建,javascript,ruby-on-rails-4,Javascript,Ruby On Rails 4,我正在尝试初始化js文件,以便在提交表单时弹出“成功消息”。 上面写着,ActionController::CareersController中的未知信息#create 在我的控制器中: def create @career = Career.new(career_params) respond_to do |format| if @career.save format.js {render :template => 'careers/c
ActionController::CareersController中的未知信息#create
在我的控制器中:
def create
@career = Career.new(career_params)
respond_to do |format|
if @career.save
format.js {render :template => 'careers/create', :locals => { :career => @career} }
else
format.html { render :new, :locals => { :career => @career} }
end
end
end
和我的create.js.erb文件:
$(document).ready(function(){
$("#new_career").submit(function(e){
var postData = $(this).serializeArray();
var formURL = $(this).attr("action");
$.ajax(
{
url : formURL,
type: "POST",
data : postData,
format: 'js',
success:function(data, textStatus, jqXHR)
{
alert("Form has been submitted");
},
error: function(jqXHR, textStatus, errorThrown){
alert("Network connection problem");
}
});
e.preventDefault(); //STOP default action
e.unbind(); //unbind. to stop multiple form submit.
});
})
这是我的服务器错误日志:
Started POST "/careers" for ::1 at 2015-06-15 21:54:32 +0600
Processing by CareersController#create as HTML
Parameters: {"utf8"=>"√", "authenticity_token"=>"3NOJnGQZsFuYtd4JdNGl4wVmIh7at3laQDfjYyp1iPxt/xUdokGqSaAQiWOb+zEh2yvrW6IE3CrnPXQhwBADTg==", "career"=>{"full_name"=>"mezbah", "email
"=>"mezbahalam26@gmail.com", "phone_number"=>"01742626262"}, "commit"=>"SUBMIT APPLICATION"}
(0.0ms) begin transaction
SQL (1.0ms) INSERT INTO "careers" ("full_name", "email", "phone_number", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?) [["full_name", "mezbah"], ["email", "mezbahalam26@gmai
l.com"], ["phone_number", "01742626262"], ["created_at", "2015-06-15 15:54:32.107023"], ["updated_at", "2015-06-15 15:54:32.107023"]]
(172.2ms) commit transaction
Completed 406 Not Acceptable in 178ms (ActiveRecord: 173.2ms)
ActionController::UnknownFormat (ActionController::UnknownFormat):
app/controllers/careers_controller.rb:21:in `create'
Rendered C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/_source.erb (1.0ms)
Rendered C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (3.0ms)
Rendered C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.0ms)
Rendered C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (48.0ms)
Cannot render console with content type multipart/form-dataAllowed content types: [#<Mime::Type:0x42c5208 @synonyms=["application/xhtml+xml"], @symbol=:html, @string="text/html">, #<
Mime::Type:0x42c4458 @synonyms=[], @symbol=:text, @string="text/plain">, #<Mime::Type:0x4267e48 @synonyms=[], @symbol=:url_encoded_form, @string="application/x-www-form-urlencoded">]
于2015-06-15 21:54:32+0600开始为::1发布“/职业生涯”
由CareerController处理#创建为HTML
参数:{“utf8”=>“√", "真实性令牌“=>”3NOJnGQZsFuYtd4JdNGl4wVmIh7at3laQDfjYyp1iPxt/xudokqsaaqiwob+zEh2yvrW6IE3CrnPXQhwBADTg==”,“职业”=>{“全名”=>“梅兹巴”,“电子邮件”
"=>"mezbahalam26@gmail.com“,“电话号码”=>“01742626262”},“提交”=>“提交申请”}
(0.0ms)开始事务处理
SQL(1.0ms)插入“职业”(“全名”、“电子邮件”、“电话号码”、“创建地址”、“更新地址”)值(?、、、、、?)[“全名”、“mezbah”]、[“电子邮件”、”mezbahalam26@gmai
l、 com“],[“电话号码”,“01742626262”],[“创建地址”,“2015-06-15 15:54:32.107023”],[“更新地址”,“2015-06-15 15:54:32.107023”]
(172.2ms)提交事务
178ms内完成406不可接受(ActiveRecord:173.2ms)
ActionController::UnknownFormat(ActionController::UnknownFormat):
app/controllers/careers_controller.rb:21:in'create'
呈现C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action\u dispatch/middleware/templates/rescues//u source.erb(1.0ms)
呈现C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action\u dispatch/middleware/templates/rescues//u trace.html.erb(3.0ms)
呈现C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action\u dispatch/middleware/templates/rescues//u request\u and\u response.html.erb(1.0ms)
呈现C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/actionpack-4.2.1/lib/action\u dispatch/middleware/templates/rescues/diagnostics.html.erb(48.0ms)
无法呈现内容类型为multipart/form dataAllowed的控制台内容类型:[##<
Mime::Type:0x42c4458@synonyms=[],@symbol=:text,@string=“text/plain”>,#]
我做错了什么?请帮忙
ActionController::CareerController中的未知信息#创建
您将格式定义为json,而不是js。把它改成这样
def create
@career = Career.new(career_params)
respond_to do |format|
if @career.save
format.js {render :template => 'careers/create', :locals => { :career => @career} }
else
format.html { render :new, :locals => { :career => @career} }
end
end
end
更新
您还必须在ajax中将格式定义为js
#create.js.erb
$(document).ready(function(){
$("#new_career").submit(function(e){
var postData = $(this).serializeArray();
var formURL = $(this).attr("action");
$.ajax(
{
url : formURL,
type: "POST",
data : postData,
format: 'js', #here
success:function(data, textStatus, jqXHR)
{
alert("Form has been submitted");
},
error: function(jqXHR, textStatus, errorThrown){
alert("Network connection problem");
}
});
e.preventDefault(); //STOP default action
e.unbind(); //unbind. to stop multiple form submit.
});
})
@Mezbah是错误仍然存在还是你得到了新的错误?让我们看看。