- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在努力解决如何使用 Rails 和 AJAX 重新加载部分内容,并且收到“未定义方法”错误。我认为这可能是因为我没有正确地将局部变量传递回部分,但我不确定这应该如何工作。
我有一个“项目”Show.html.erb 页面。在该显示页面上,有一个与该项目相关的“投资”DIV。
Show.html.erb
<div class="col-md-3" id="investments-container">
<%= render 'proj_investments' %>
</div>
然后,它会在 _proj_investments.html.erb 部分中呈现一个部分,该部分循环遍历与该项目相关的所有投资(按奖励类型分组)。每个都有一个表单提交,允许以某种方式点击“投资”按钮并使用 AJAX 创建新的投资。 ( <%= form_for [@investment, Investment.new], 远程: true, "data-type"=> :js do |f| %> )
_proj_investments.html.erb
<% if @project.rewards.any? %>
<% @project.rewards.each do |reward| %>
<div class="panel panel-default project-rightpanel">
<div class="project-rightpanel-header">
<span class="project-rightpanel-header amount"><%=number_to_currency(reward.amount,precision: 0)%></span>
<span class="project-rightpanel-header amount"><%=reward.rewardtype.name %></span>
</div>
<div class="project-rightpanel-header">
<%=reward.investments.count(:amount)%> investments for <%=number_to_currency(reward.investments.sum(:amount),precision: 0)%>
</div>
</div>
<%= form_for [@investment, Investment.new], remote: true, "data-type" => :js do |f| %>
<div class="field">
<%= f.hidden_field :amount, :value => reward.amount %>
<%= f.hidden_field :User_id, :value => current_user.id %>
<%= f.hidden_field :Reward_id, :value => reward.id %>
</div>
<div class="actions">
<%= f.submit "INVEST", :class => "btn btn-success" %>
</div>
<% end %>
</div>
<% end %>
<% end %>
然后,投资 Controller 调用 Create 方法并响应 JS 并调用我的 create.js.erb
investments_controller.rb
def create
@investment = Investment.new(investment_params)
respond_to do |format|
if @investment.save
format.js {}
format.html { redirect_to @investment, notice: 'Investment was successfully created.' }
format.json { render :show, status: :created, location: @investment }
else
format.html { render :new }
format.json { render json: @investment.errors, status: :unprocessable_entity }
end
end
结束
在 create.js.erb 中,我只想刷新原始 proj_investments 部分中的所有内容。但是,当我加载它时,当我使用此代码时,它会给我一个“未定义的方法‘投资’”错误:
Create.js.erb
$("#investments-container").html("<%= escape_javascript(render :partial => 'projects/proj_investments', :formats => :html)%>");
我认为这里发生的事情是 Rails 部分已经渲染,因此我尝试利用项目、奖励和投资等不再通过 AJAX 访问的对象。也许我需要以某种方式传递这些对象来渲染部分。但我不知 Prop 体该怎么做。或者,如果我在概念上是错误的,那也很好知道!
谢谢,迈克
添加的模型:
class Project < ActiveRecord::Base
belongs_to :user
belongs_to :genre
has_many :rewards, dependent: :destroy
has_many :investments, through: :rewards
has_many :collaborators
has_attached_file :image, :styles => { :large => "600x600>", :medium => "300x300>", :thumb => "100x100>" }
validates_attachment_content_type :image, :content_type => ["image/jpg", "image/jpeg", "image/png"]
validates :image, presence: true
accepts_nested_attributes_for :rewards,
reject_if: proc { |attributes| attributes['name'].blank? },
allow_destroy: true
accepts_nested_attributes_for :collaborators,
reject_if: proc { |attributes| attributes['last'].blank? },
allow_destroy: true
end
class Investment < ActiveRecord::Base
belongs_to :user
belongs_to :reward
belongs_to :project
end
class Reward < ActiveRecord::Base
belongs_to :project
belongs_to :rewardtype
has_many :investments, dependent: :destroy
validates :rewardtype, presence: true
validates :name,
presence: true
end
下面是完整的堆栈跟踪:
D, [2016-01-28T21:44:45.289613 #50185] DEBUG -- :
D, [2016-01-28T21:44:45.289663 #50185] DEBUG -- :
D, [2016-01-28T21:44:45.289679 #50185] DEBUG -- :
D, [2016-01-28T21:44:45.289689 #50185] DEBUG -- :
I, [2016-01-28T21:44:45.289850 #50185] INFO -- : Started GET "/projects/28" for ::1 at 2016-01-28 21:44:45 -0800
I, [2016-01-28T21:44:45.289887 #50185] INFO -- : Started GET "/projects/28" for ::1 at 2016-01-28 21:44:45 -0800
D, [2016-01-28T21:44:45.298245 #50185] DEBUG -- : ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
D, [2016-01-28T21:44:45.298297 #50185] DEBUG -- : ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
I, [2016-01-28T21:44:45.326787 #50185] INFO -- : Processing by ProjectsController#show as HTML
I, [2016-01-28T21:44:45.326853 #50185] INFO -- : Processing by ProjectsController#show as HTML
I, [2016-01-28T21:44:45.326896 #50185] INFO -- : Parameters: {"id"=>"28"}
I, [2016-01-28T21:44:45.326923 #50185] INFO -- : Parameters: {"id"=>"28"}
D, [2016-01-28T21:44:45.349554 #50185] DEBUG -- : Project Load (0.2ms) SELECT "projects".* FROM "projects" WHERE "projects"."id" = ? LIMIT 1 [["id", 28]]
D, [2016-01-28T21:44:45.349601 #50185] DEBUG -- : Project Load (0.2ms) SELECT "projects".* FROM "projects" WHERE "projects"."id" = ? LIMIT 1 [["id", 28]]
D, [2016-01-28T21:44:45.375951 #50185] DEBUG -- : User Load (0.1ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.376001 #50185] DEBUG -- : User Load (0.1ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.418778 #50185] DEBUG -- : (0.2ms) SELECT SUM("investments"."amount") FROM "investments" INNER JOIN "rewards" ON "investments"."reward_id" = "rewards"."id" WHERE "rewards"."project_id" = ? [["project_id", 28]]
D, [2016-01-28T21:44:45.418823 #50185] DEBUG -- : (0.2ms) SELECT SUM("investments"."amount") FROM "investments" INNER JOIN "rewards" ON "investments"."reward_id" = "rewards"."id" WHERE "rewards"."project_id" = ? [["project_id", 28]]
D, [2016-01-28T21:44:45.438045 #50185] DEBUG -- : Reward Exists (0.1ms) SELECT 1 AS one FROM "rewards" WHERE "rewards"."project_id" = ? LIMIT 1 [["project_id", 28]]
D, [2016-01-28T21:44:45.438090 #50185] DEBUG -- : Reward Exists (0.1ms) SELECT 1 AS one FROM "rewards" WHERE "rewards"."project_id" = ? LIMIT 1 [["project_id", 28]]
D, [2016-01-28T21:44:45.438824 #50185] DEBUG -- : Reward Load (0.1ms) SELECT "rewards".* FROM "rewards" WHERE "rewards"."project_id" = ? [["project_id", 28]]
D, [2016-01-28T21:44:45.438858 #50185] DEBUG -- : Reward Load (0.1ms) SELECT "rewards".* FROM "rewards" WHERE "rewards"."project_id" = ? [["project_id", 28]]
D, [2016-01-28T21:44:45.448028 #50185] DEBUG -- : Rewardtype Load (0.1ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.448074 #50185] DEBUG -- : Rewardtype Load (0.1ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.453290 #50185] DEBUG -- : (0.2ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 50]]
D, [2016-01-28T21:44:45.453370 #50185] DEBUG -- : (0.2ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 50]]
D, [2016-01-28T21:44:45.455273 #50185] DEBUG -- : (0.3ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 50]]
D, [2016-01-28T21:44:45.455328 #50185] DEBUG -- : (0.3ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 50]]
D, [2016-01-28T21:44:45.476845 #50185] DEBUG -- : User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? ORDER BY "users"."id" ASC LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.476897 #50185] DEBUG -- : User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? ORDER BY "users"."id" ASC LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.478277 #50185] DEBUG -- : Rewardtype Load (0.1ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 3]]
D, [2016-01-28T21:44:45.478313 #50185] DEBUG -- : Rewardtype Load (0.1ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 3]]
D, [2016-01-28T21:44:45.479190 #50185] DEBUG -- : (0.1ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 55]]
D, [2016-01-28T21:44:45.479218 #50185] DEBUG -- : (0.1ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 55]]
D, [2016-01-28T21:44:45.479621 #50185] DEBUG -- : (0.1ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 55]]
D, [2016-01-28T21:44:45.479645 #50185] DEBUG -- : (0.1ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 55]]
D, [2016-01-28T21:44:45.481244 #50185] DEBUG -- : CACHE (0.0ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.481287 #50185] DEBUG -- : CACHE (0.0ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 2]]
D, [2016-01-28T21:44:45.482172 #50185] DEBUG -- : (0.1ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 56]]
D, [2016-01-28T21:44:45.482204 #50185] DEBUG -- : (0.1ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 56]]
D, [2016-01-28T21:44:45.482744 #50185] DEBUG -- : (0.1ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 56]]
D, [2016-01-28T21:44:45.482779 #50185] DEBUG -- : (0.1ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 56]]
D, [2016-01-28T21:44:45.484161 #50185] DEBUG -- : CACHE (0.0ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 3]]
D, [2016-01-28T21:44:45.484191 #50185] DEBUG -- : CACHE (0.0ms) SELECT "rewardtypes".* FROM "rewardtypes" WHERE "rewardtypes"."id" = ? LIMIT 1 [["id", 3]]
D, [2016-01-28T21:44:45.484953 #50185] DEBUG -- : (0.1ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 57]]
D, [2016-01-28T21:44:45.484984 #50185] DEBUG -- : (0.1ms) SELECT COUNT("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 57]]
D, [2016-01-28T21:44:45.485425 #50185] DEBUG -- : (0.1ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 57]]
D, [2016-01-28T21:44:45.485451 #50185] DEBUG -- : (0.1ms) SELECT SUM("investments"."amount") FROM "investments" WHERE "investments"."reward_id" = ? [[nil, 57]]
I, [2016-01-28T21:44:45.486265 #50185] INFO -- : Rendered projects/_proj_investments.html.erb (93.5ms)
I, [2016-01-28T21:44:45.486298 #50185] INFO -- : Rendered projects/_proj_investments.html.erb (93.5ms)
I, [2016-01-28T21:44:45.486347 #50185] INFO -- : Rendered projects/show.html.erb within layouts/application (123.7ms)
I, [2016-01-28T21:44:45.486419 #50185] INFO -- : Rendered projects/show.html.erb within layouts/application (123.7ms)
I, [2016-01-28T21:44:46.135983 #50185] INFO -- : Rendered layouts/_header.html.erb (1.0ms)
I, [2016-01-28T21:44:46.136035 #50185] INFO -- : Rendered layouts/_header.html.erb (1.0ms)
I, [2016-01-28T21:44:46.136408 #50185] INFO -- : Completed 200 OK in 809ms (Views: 778.2ms | ActiveRecord: 3.3ms)
I, [2016-01-28T21:44:46.136454 #50185] INFO -- : Completed 200 OK in 809ms (Views: 778.2ms | ActiveRecord: 3.3ms)
D, [2016-01-28T21:44:58.979348 #50185] DEBUG -- :
D, [2016-01-28T21:44:58.979399 #50185] DEBUG -- :
D, [2016-01-28T21:44:58.979420 #50185] DEBUG -- :
D, [2016-01-28T21:44:58.979434 #50185] DEBUG -- :
I, [2016-01-28T21:44:58.979548 #50185] INFO -- : Started POST "/investments" for ::1 at 2016-01-28 21:44:58 -0800
I, [2016-01-28T21:44:58.979579 #50185] INFO -- : Started POST "/investments" for ::1 at 2016-01-28 21:44:58 -0800
I, [2016-01-28T21:44:58.986293 #50185] INFO -- : Processing by InvestmentsController#create as JS
I, [2016-01-28T21:44:58.986368 #50185] INFO -- : Processing by InvestmentsController#create as JS
I, [2016-01-28T21:44:58.986441 #50185] INFO -- : Parameters: {"utf8"=>"✓", "investment"=>{"amount"=>"50", "User_id"=>"2", "Reward_id"=>"50"}, "commit"=>"INVEST"}
I, [2016-01-28T21:44:58.986457 #50185] INFO -- : Parameters: {"utf8"=>"✓", "investment"=>{"amount"=>"50", "User_id"=>"2", "Reward_id"=>"50"}, "commit"=>"INVEST"}
D, [2016-01-28T21:44:58.987691 #50185] DEBUG -- : (0.1ms) begin transaction
D, [2016-01-28T21:44:58.987725 #50185] DEBUG -- : (0.1ms) begin transaction
D, [2016-01-28T21:44:58.991624 #50185] DEBUG -- : SQL (0.4ms) INSERT INTO "investments" ("User_id", "Reward_id", "amount", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?) [["User_id", 2], ["Reward_id", 50], ["amount", 50.0], ["created_at", "2016-01-29 05:44:58.990349"], ["updated_at", "2016-01-29 05:44:58.990349"]]
D, [2016-01-28T21:44:58.991667 #50185] DEBUG -- : SQL (0.4ms) INSERT INTO "investments" ("User_id", "Reward_id", "amount", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?) [["User_id", 2], ["Reward_id", 50], ["amount", 50.0], ["created_at", "2016-01-29 05:44:58.990349"], ["updated_at", "2016-01-29 05:44:58.990349"]]
D, [2016-01-28T21:44:58.992612 #50185] DEBUG -- : (0.6ms) commit transaction
D, [2016-01-28T21:44:58.992677 #50185] DEBUG -- : (0.6ms) commit transaction
I, [2016-01-28T21:44:59.002803 #50185] INFO -- : Rendered projects/_proj_investments.html.erb (3.3ms)
I, [2016-01-28T21:44:59.002882 #50185] INFO -- : Rendered projects/_proj_investments.html.erb (3.3ms)
I, [2016-01-28T21:44:59.002941 #50185] INFO -- : Rendered investments/create.js.erb (4.6ms)
I, [2016-01-28T21:44:59.002974 #50185] INFO -- : Rendered investments/create.js.erb (4.6ms)
I, [2016-01-28T21:44:59.003170 #50185] INFO -- : Completed 500 Internal Server Error in 17ms (ActiveRecord: 1.1ms)
I, [2016-01-28T21:44:59.003204 #50185] INFO -- : Completed 500 Internal Server Error in 17ms (ActiveRecord: 1.1ms)
F, [2016-01-28T21:44:59.004536 #50185] FATAL -- :
ActionView::Template::Error (undefined method `investments' for nil:NilClass):
1: <div class="panel panel-default project-rightpanel">
2: <div class="project-rightpanel-header">
3: <span class="project-rightpanel-header amount"><%=number_to_currency(@project.investments.sum(:amount),precision: 0)%></span> of <span class="project-rightpanel-header amount">$20,000</span> raised in 15 days
4: </div>
5: <div id="projectprogress"></div>
6: <div class="project-rightpanel-header">
app/views/projects/_proj_investments.html.erb:3:in `_app_views_projects__proj_investments_html_erb__2910721485294471226_70328031908000'
app/views/investments/create.js.erb:1:in `_app_views_investments_create_js_erb__4066473719869479756_70328057899160'
F, [2016-01-28T21:44:59.004591 #50185] FATAL -- :
ActionView::Template::Error(未定义方法 investments' for nil:NilClass):
_app_views_projects__proj_investments_html_erb__2910721485294471226_70328031908000' app/views/investments/create.js.erb:1:in `_app_views_investments_create_js_erb__4066473719869479756_70328057899160'
1: <div class="panel panel-default project-rightpanel">
2: <div class="project-rightpanel-header">
3: <span class="project-rightpanel-header amount"><%=number_to_currency(@project.investments.sum(:amount),precision: 0)%></span> of <span class="project-rightpanel-header amount">$20,000</span> raised in 15 days
4: </div>
5: <div id="projectprogress"></div>
6: <div class="project-rightpanel-header">
app/views/projects/_proj_investments.html.erb:3:in
I, [2016-01-28T21:44:59.114304 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/actionpack-4.2.4/lib/action_dispatch/middleware/templates/rescues/_trace.text.erb (0.5ms)
I, [2016-01-28T21:44:59.114355 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/actionpack-4.2.4/lib/action_dispatch/middleware/templates/rescues/_trace.text.erb (0.5ms)
I, [2016-01-28T21:44:59.126017 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/actionpack-4.2.4/lib/action_dispatch/middleware/templates/rescues/_request_and_response.text.erb (0.6ms)
I, [2016-01-28T21:44:59.126055 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/actionpack-4.2.4/lib/action_dispatch/middleware/templates/rescues/_request_and_response.text.erb (0.6ms)
I, [2016-01-28T21:44:59.126101 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/actionpack-4.2.4/lib/action_dispatch/middleware/templates/rescues/template_error.text.erb (24.6ms)
I, [2016-01-28T21:44:59.126152 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/actionpack-4.2.4/lib/action_dispatch/middleware/templates/rescues/template_error.text.erb (24.6ms)
I, [2016-01-28T21:44:59.144002 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/_markup.html.erb (0.3ms)
I, [2016-01-28T21:44:59.144052 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/_markup.html.erb (0.3ms)
I, [2016-01-28T21:44:59.166877 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/_inner_console_markup.html.erb within layouts/inlined_string (0.3ms)
I, [2016-01-28T21:44:59.166935 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/_inner_console_markup.html.erb within layouts/inlined_string (0.3ms)
I, [2016-01-28T21:44:59.177608 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/_prompt_box_markup.html.erb within layouts/inlined_string (0.2ms)
I, [2016-01-28T21:44:59.177656 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/_prompt_box_markup.html.erb within layouts/inlined_string (0.2ms)
I, [2016-01-28T21:44:59.187782 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/style.css.erb within layouts/inlined_string (0.3ms)
I, [2016-01-28T21:44:59.187836 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/style.css.erb within layouts/inlined_string (0.3ms)
I, [2016-01-28T21:44:59.188232 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/console.js.erb within layouts/javascript (33.9ms)
I, [2016-01-28T21:44:59.188272 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/console.js.erb within layouts/javascript (33.9ms)
I, [2016-01-28T21:44:59.198215 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/main.js.erb within layouts/javascript (0.2ms)
I, [2016-01-28T21:44:59.198255 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/main.js.erb within layouts/javascript (0.2ms)
I, [2016-01-28T21:44:59.209355 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/error_page.js.erb within layouts/javascript (0.4ms)
I, [2016-01-28T21:44:59.209420 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/error_page.js.erb within layouts/javascript (0.4ms)
I, [2016-01-28T21:44:59.210343 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/index.html.erb (74.6ms)
I, [2016-01-28T21:44:59.210453 #50185] INFO -- : Rendered /Users/mikelincoln/.rvm/gems/ruby-2.2.1/gems/web-console-2.2.1/lib/web_console/templates/index.html.erb (74.6ms)
最佳答案
您的错误是<%=number_to_currency(@project.investments.sum(:amount),precision: 0)
。当您渲染 create.js.erb
的部分时没有为 ivar @project
分配任何值这就是为什么它是 nil
。您需要为其分配一个值。
错误回溯的修复看起来像:
def create
@investment = Investment.new(investment_params)
respond_to do |format|
if @investment.save
@project = @investment.reload.project
format.js {}
format.html { redirect_to @investment, notice: 'Investment was successfully created.' }
format.json { render :show, status: :created, location: @investment }
else
format.html { render :new }
format.json { render json: @investment.errors, status: :unprocessable_entity }
end
end
关于javascript - 使用 AJAX 刷新 Rails 部分时未定义的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35075816/
我们知道,当使用 hibernate 对数据库进行批量更新时(即使在 HQL 中),所做的更改不会复制到存储在当前 session 中的实体。 所以我可以调用 session.refresh 来加载对
我正在做一个项目,所有的东西都保存在事件中,所以服务器需要一些时间来响应新数据。我正在使用 Fluent 等待使用 ajax 的页面,但是这个不使用任何 ajax。所以我想刷新页面检查是否有新项目,如
我有一个从 Vector 创建的 JTable。 如何刷新 JTable 以显示添加到 Vector 的新数据? 最佳答案 当 TableModel 发生更改时,您的 JTable 应该会自动更新。我
有没有办法使用下面的代码来刷新已经存在的 div id,而不是刷新时间? window.onload = startInterval; function startInterval() {
我更新了在 Shiny Server 上运行的 Shiny 应用程序使用的 DataSet.RData。但是, Shiny 的应用程序仍在旧数据上运行。我已通过浏览器历史记录清除并重新启动浏览器几次,
我的应用程序中有一个无限滚动的网格面板(ExtJs 4.2.1),类似于 this example .用户可以单击刷新按钮,然后必须使用数据库中的数据更新网格的行。我在刷新按钮处理程序中调用 stor
我不知道这三种方法中哪一种最适合我。他们都为我工作。有谁知道刷新、更新和重画之间的区别吗? 最佳答案 根据在线文档: Refresh - 重新绘制屏幕上的控件。 Call Refresh method
有什么办法吗 ICollectionView.Refresh() 或者 CollectionViewSource.GetDefaultView(args.NewValue).Refresh(); 在
这个问题已经有答案了: Updating address bar with new URL without hash or reloading the page [duplicate] (4 个回答)
我有一个 javascript 设置超时以在 10 秒后关闭 div,并且我想在 div 关闭时添加页面刷新。我正在使用的代码如下。 var container_close_sec = "1
我有一组具有以下名称的页面.... update1.php update2.php update3.php update4.php update5.php update6.php update7.ph
如果是则触发js函数。我可以使一个复选框保持选中状态,并在页面刷新时检查值并选中“checked”,并提交以下内容... checked="checked" /> 你都不记得触发js函数。 这是我的
我正在尝试刷新 php 脚本以在数据库更新时显示更新的内容。我首先构建了我的 php,然后刷新代码,然后合并它们。但是,脚本不会更新。有谁知道为什么吗? $(document).ready
当我要删除的节点扩展集合类型时,Grails中有一个错误阻止我使用removeFrom *。直接从关联中删除节点不会更新二级缓存。 A hasMany B 有什么方法可以使关联缓存手动无效或强制重新加
我正在使用 hibernate 和 mysql 来抽象一个数据库,以便在 java 驱动的网站中使用。我使用 hibernate 很好地解决了所有查询,但似乎无法弄清楚如何使用它进行更新、插入和删除,
如何通过调用 oncreateview 方法重新创建 fragment ?我有一个 fragment ,用于通过表单插入新数据,单击按钮后,我想通过删除在 EditText 中输入的数据来重新创建 f
当我从一个到另一个时,我试图刷新我的观点。我知道我应该将刷新代码放在 viewWillAppear 中,但我不知道该放什么代码。 你们能帮帮我吗? 谢谢! 最佳答案 在您看来,请调用 setNeeds
我正在开发 iPhone 应用程序并希望使用: CFStreamCreatePairWithSocketToHost(NULL, url, port, &serverReadStream, &serv
看到我已经创建了一个用于登录用户的脚本。而且我还添加了设置选项卡,以便用户可以编辑他们的设置!但是当我尝试它时,mysql 表中的数据发生了变化,但配置文件中显示的用户名和用户电子邮件保持不变!当我注
好的。这就是它的样子。 当我启动应用程序时,我从服务器收到的第一件事是数据: {name: "test", type: "checkbox" checked: true, } 这使得其中一个复选框
我是一名优秀的程序员,十分优秀!