所以我一直在用我的腦袋砸了幾個小時不知道該去哪裏。 我想在我的index.html.haml
內呈現部分_show.html.haml
。不過,儘管我在渲染時聲明瞭它們,但我仍然遇到了未加載的當地人的問題。Rails部分AJAX請求不會加載當地人,儘管他們分配了
這是我的控制器。
def show
@table = params["id"]
@bank = Bank.find(params["bank_id"])
@table_contents = @bank.table_config.as_json.first[1][@table]
respond_to do |format|
format.js {render :partial => 'manage/table_configs/show', locals: { table: @table, table_contents: @table_contents}}
end
end
這是Index.html.haml
#all-tables
%h1 Table Configurations
%br/
%table#table_configs_table.pretty
%tr
%th Table Name
%tbody
- @tables.each do |table|
%tr
%td= link_to table.titleize, manage_bank_table_config_path(@bank, table), remote: true
#show-table
%h2 Show
:javascript
$('#show-table').html('#{escape_javascript(render(partial: "manage/table_configs/show", :locals => {:table => @table, :table_contents => @table_contents, :bank => @bank}))}');
這是我的一部分,我試圖來呈現不斷返回該錯誤。 undefined method 'titleize' for nil:NilClass
_show.html.haml
%h1= table.titleize
%br/
%table.table.table-striped.table-hover.pretty
%tr
%th Column Name
%th Column State
%tbody
- table_contents.each do |key, value|
%tr
%td=key.to_s.titleize
%td=value.values.first.to_s.titleize
%br/
=link_to "Edit Table", edit_manage_bank_table_config_path(@bank, table), class: "btn btn-sm"
=link_to "All Tables", manage_bank_table_configs_path(@bank), class: "btn btn-sm"
搞清楚爲什麼發生這種情況,將不勝感激任何幫助。
謝謝!
編輯
我還要補充一點,這個工作正常沒有Ajax
你確定你想要value.values.to_s而不只是value.to_s ...在顯示部分? – Anand
'@ tables'不在任何地方聲明,所以它默認爲零。我看到'@ table'聲明瞭,而不是'@ tables' –
'@ tables'在我的索引控制器中聲明瞭 –