Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在Rails控制器上调用create方法将返回所有行_Ruby On Rails - Fatal编程技术网

Ruby on rails 在Rails控制器上调用create方法将返回所有行

Ruby on rails 在Rails控制器上调用create方法将返回所有行,ruby-on-rails,Ruby On Rails,我想调用Rails控制器的“create”方法来插入一条新记录 呼叫http://localhost:3000/books.json使用httppost调用books\create方法,允许我插入新书 这很好,但是JSON响应返回数据库中存在的所有书籍。调用books#create似乎也会调用books#index 如何将books#create的JSON输出限制为仅最后插入的记录而不是所有记录?您可能正在使用GET请求调用路由 尝试curl-d''http://localhost:3000/b

我想调用Rails控制器的“create”方法来插入一条新记录

呼叫
http://localhost:3000/books.json
使用
httppost
调用
books\create
方法,允许我插入新书

这很好,但是JSON响应返回数据库中存在的所有书籍。调用
books#create
似乎也会调用
books#index


如何将
books#create
的JSON输出限制为仅最后插入的记录而不是所有记录?

您可能正在使用GET请求调用路由

尝试
curl-d''http://localhost:3000/books.json
发出POST请求


如果不起作用,则粘贴
rake routes
的输出和
BooksController#create
操作。

在应为json请求指定的路由中

resources :books , :format => 'json'

成功创建记录后,您可以将其重定向到显示id为或的记录页面
您可以有条件地调整索引方法,这意味着如果将id传递给索引,它将仅显示该记录,否则将显示所有可用记录

您能显示创建操作代码吗?控制器甚至没有创建方法。它似乎使用Rails的默认/内置方法。您的控制器是什么?路由显示更多的代码可能会很快解决这个问题。成功创建后的默认rails不是“索引”操作,而是“显示”操作。