问题描述
即使我已定义索引方法,执行HTTP GET The action 'index' could not be found for AttackNarrativesController
时也会收到错误/attack_narratives
。
config/routes.rb
:
Rails.application.routes.draw do
...
resources :attack_narratives
...
end
controllers/attack_narratives_controller.rb
:
class AttackNarrativesController < ApplicationController
def index
puts "test"
end
end
$ rails routes
...
attack_narratives GET /attack_narratives(.:format) attack_narratives#index
POST /attack_narratives(.:format) attack_narratives#create
new_attack_narrative GET /attack_narratives/new(.:format) attack_narratives#new
edit_attack_narrative GET /attack_narratives/:id/edit(.:format) attack_narratives#edit
attack_narrative GET /attack_narratives/:id(.:format) attack_narratives#show
PATCH /attack_narratives/:id(.:format) attack_narratives#update
PUT /attack_narratives/:id(.:format) attack_narratives#update
DELETE /attack_narratives/:id(.:format) attack_narratives#destroy
...
test
文本没有出现在日志中。
视图views/attack_narratives/index.slim
呈现得很好,但是我需要在index方法中执行代码以向视图提供某些数据。我是Ruby和Rails的新手,并且已经尝试解决数小时了。对于我来说,Rails的“神奇”特性令我非常头疼,因为我什至不知道从哪里开始进行故障排除。我希望我只是忽略了一些简单的事情。感谢所有能提供帮助的人。
$ rails version
Rails 6.0.2.1
$ ruby --version
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux]
解决方法
您应该尝试在索引操作中使用Rails Logger:
C = (A + B) / 2
C_c = np.ceil(C)
C_c[np.flatnonzero([C!=C.astype(int)])[::2]] -= 1
print(C_c.sum())
#10.0
print(C_c.astype(int))
#[3 4 3]
,
重新启动Rails服务器解决了此问题。谢谢@ sergio-tulentsev