问题标签 [actionpack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 如何解决rails应用中使用actionpack的冲突问题
我来到这里是我寻求问题答案的最后手段。我的 rails 应用程序依赖于 ruby-2.0.0 和 rails 4.1.4(虽然我可以回到以前的版本,但不是为了解决问题而必须这样做),我正在尝试使用gem 'dotiw', '~> 1.1.1'
依赖于[actionpack][1] (~> 3)
. 来自控制台的以下消息将更好地理解问题。运行 $ 后终端中的消息报告bundle install
正如您已经看到的那样,我删除了我的Gemfile.lock
并再次安装了捆绑包。作为我的问题的解决方案,我可以做的是更改我的rails
版本或gem 'dotiw', '~> 1.1.1'
更改前者会影响我的问题,而减少后者的版本将弃用某些功能。另外我不明白为什么gem 'dotiw', '~> 1.1.1'
没有更新它以支持最新版本的 actionpack,或者更好地继续更新以支持它的依赖项的所有未来版本。
ruby-on-rails - Rails 4.1.2 - to_param 转义斜杠(并破坏应用程序)
我在我的应用程序to_param
中使用创建自定义 URL(此自定义路径包含斜杠):
问题是,由于Rails 4.1.2
行为发生了变化并且 Rails 不允许在 URL 中使用斜杠(当使用自定义 URL 时),所以它转义了斜杠。
我有这样的路线:
我根据线程中的建议尝试将 glob 参数仅用于 show 方法以确保其有效:
但这绝对行不通。我仍然有这样的断开链接:
当然,如果我自己替换转义斜线:
并尝试访问路径,然后页面将被打开。
任何想法我该如何解决?
ruby-on-rails - 删除后 Rails 重定向失败。(删除成功但不显示剩余记录)
当用户调用 users_path 视图时,所有用户都会在显示中正确呈现。
但是,我也在删除后重定向到索引。控制台显示 200 Ok 但未呈现索引。
尝试单步执行一些 rails 代码,看起来在删除之后,rails 会进行隐式渲染。在调用索引视图的第一种情况下,它不会这样做。
视图/用户/index.rb
users_controller.rb
..... users_controller.rb ...
有任何人知道什么可能导致重定向到静默停止
ruby-on-rails - 动作包中的 Rails SystemStackError(堆栈级别太深)
今天我的 Ruby on Rails API 出现错误,我无法弄清楚问题所在。每当我尝试在我的控制器中创建一个新角色时,我总是得到一个 SystemStackError 并且我不知道为什么。我将在下面发布相关文件。
characters_controller.rb
路线.rb
character.rb (我的模型)
我得到的错误(堆栈跟踪)是:
任何帮助表示赞赏,因为我不知道如何处理这个问题:) 谢谢
编辑:每当我尝试再次发送相同的请求时,我都会收到不同的错误:
第 11 行是:
ruby-on-rails - 在行动之外设置“respond_to”
我想在行动之外设置“respond_to”部分的行动。
这是它应该如何工作的示例:
早些时候我为此使用了response_for gem,但它不再受支持。您可以建议哪些解决方案?我使用 Rails 4.2。
ruby-on-rails - rails route helpers 在哪里以及基于什么模板定义?
像user_path这样的Rails URL 辅助方法是动态定义的,但具体在哪里呢?
它们属于哪个模块/类/类路径?
ruby-on-rails - 从中间件渲染“内部”Rails 控制器
我有一个 Rails 中间件堆栈,并且我在 ActionDispatch 之外有一块 MW。理想情况下,我想通过触发内部URL (无法通过通常的 URL 路由访问)来使用 ActionDispatch 呈现页面 - 类似于 Devise 呈现“身份验证失败”页面的方式。最好的办法是只在应用程序中按名称触发一个特定的控制器操作,并返回它的渲染结果(甚至没有在路由中)。
这样做的标准现代方式是什么?
更新:
ruby-on-rails - 新的(干净的)Rails 项目崩溃(动作包错误)
我刚刚创建了一个 Rails 项目:rails new project -d mysql
et 修改 database.rb 以匹配,当我尝试 rails s -b 0.0.0.0 end access to local.dev:3000 (vagrant machine) 我有一个问题。
谢谢您的帮助
ruby-on-rails - 活动管理员:无法访问显示/编辑页面
我在使用 Active Admin 时遇到问题。以下是版本:
红宝石'2.2.1'
导轨'4.2.0'
活动管理员:1.0.0.pre1
arbre:1.0.3(提到这个是因为它似乎与我的问题有关)
我们升级到 rails 4.2 并且还必须升级 activeadmin(从 0.5 开始)。经过几次调整(尤其是授权系统),一切似乎都很好,除了一个大问题:我只能访问索引页面。当转到带有 ID 的页面时(例如:“ http://localhost:3000/admin/companies/2968 ”),我收到此错误:
没有路由匹配 {:action=>"edit", :controller=>"admin/companies", :format=>nil, :id=> #{User id: nil, [all user attributes with nil value]}}。缺少必需的键:[:id]
看起来 param[:id] 以某种方式更改为空用户,这当然会使其中断。
这是我所知道的:
在我的 ApplicationController 上放置 binding.pry 并检查参数时,我得到 {:action=>"edit", :controller=>"admin/companies", :format=>nil, :id=>2968} (所以这里没问题)
引发错误的行是:
active_admin/resource/show.html.arb
-> arbre/元素/builder_method.rb#insert_tag
-> arbre/元素/builder_method.rb#build_tag
-> actionpack/actiondispatch/journey/formatter#generate(调用此方法时,path_parameters ID 值已损坏,从而引发错误)
知道为什么我的 ID 参数没有被正确解释/我可以在哪里进一步查看?
编辑 >> 我的 routes.rb 中有这个
并且生成的路由看起来很好用 rake 路由(在这个特定的例子中,我有 admin/companies#edit admin_company GET /admin/companies/:id(.:format)
EDIT2 >> 如果不清楚,所有节目页面都会发生这种情况。如果我去http://localhost:3000/admin/projects/例如,它工作正常,但http://localhost:3000/admin/projects/23815 也给了我 id = empty user
ruby-on-rails - Rails 坚持在响应中返回 html
我一直在尝试配置 rails restful API 服务。
我已经使用Rails-API设置了项目,并使用this添加了令牌身份验证。我的目标是所有响应都是 JSON 格式,这就是我认为 rails-api 将要完成的
运行 devise rake 生成器后,我尝试与注册端点交互,我curl
对服务器的这个请求进行了交互:
我得到这个回复:
该页面在呈现时只是一个异常跟踪:
在服务器输出中,这些行显示actionpack
中间件仍在转储他的错误、未请求的跟踪 html:
我想了解的是如何完全禁用所有内容的 html 响应
供参考,这是我的Gemfile
这是我的routes.rb
我的用户模型: