问题标签 [ruby-on-rails-6]
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-6 - 如何修复 Rails 6 中的“Uncaught TypeError: $(...).datetimepicker is not a function”错误
我正在努力将 DateTimePicker 添加到我当前的网站。
我正在使用rails 6并通过纱线在我的应用程序中添加了jQuery,并且我还安装了一个gem“datetimepicker”。
这是我尝试使用 datetimepicker 的表单:
我期待点击弹出一个带有时间选择的日历,但我在终端上遇到错误。
ruby-on-rails - Rails 6 和 Highcharts
我正在使用 Rails 6.0.0.rc1 并希望实现lazy_high_charts gem。我通过Yarn安装了 Highcharts,但收到以下错误:
其中指的是以下代码行:
我检查了是否通过 DOM 存在 Highcharts,它确实存在。如果我<script src="https://code.highcharts.com/highcharts.js"></script>
在标签中添加脚本,<head>
它会很好地加载,这很奇怪。任何帮助,将不胜感激。
javascript/packs/application.js
包.json
宝石文件
ruby-on-rails - Rails 6 和 Google Maps for Rails
我正在使用 Rails 6.0.0.rc1 并希望实现Google-Maps-for-Rails gem。我通过Yarn安装了下划线,并在我的标签中使用我的 API 添加了所需的谷歌脚本。
我下载gmaps_google.js
并将其添加到我的 vendor/js 文件夹中,因为 Rails 6 没有资产管道,而是使用 webpacker。这是我认为问题所在,因为我收到以下错误:
我更新了我的webpacker.yml
文件以查找 vendor/js 文件夹,并且在检查 DOM 时它似乎存在。
webpacker.yml
在我的javascript/packs/application.js
我包括了一条require("gmaps_google")
线。请注意,我在使用 Highcharts 时遇到了同样的问题,但能够成功加载脚本但添加window.Highcharts = Highcharts;
但我不确定我是否可以使用 require 选项做同样的事情?
javascript/packs/application.js
包.json
ruby-on-rails - 如何修复找不到'activesupport' (= 6.0.0.rc1) - 确实找到了:[activesupport-5.2.3] (Gem::MissingSpecVersionError)
我尝试在我的机器上安装 Rails 6 rc1。然后我删除每个 Active* 或 Action* gem。我遇到了这个错误。
我试图做一个bundle update
但无济于事。我正在使用 rbenv。
谁能给我指点?谢谢!
ruby-on-rails - Rails 6:每个用户只能创建一个配置文件
我目前正在开发 Rails 6 应用程序。我有以下关联。一个用户有一个配置文件,一个配置文件属于一个用户。在为用户编辑个人资料时,我最终为该用户提供了两个个人资料。我希望每个用户只有一个个人资料。
编辑表格:profile/edit.html.erb
我从控制台看到用户 1 有 2 个配置文件。我不确定配置文件是如何创建的,也许我从配置文件控制器中点击了 create 方法但错误,但我希望这不会发生。是否只有一个个人资料属于用户的验证?
我不确定问题是否来自配置路由的方式?
从下面的代码片段中,您可以看到一个用户有 2 个 user_id 的配置文件:1
不知道问题出在哪里。
ruby-on-rails - 设计:使用带有设计的用户控制器创建“配置文件”
我正在开发一个 Rails 6 应用程序,在该应用程序中我将用户模型和配置文件模型分开。这导致了一些问题,如这篇文章Rails 6 所示:每个用户只能创建一个配置文件 我正在使用 Devise 进行身份验证,并决定添加一个用户控制器。我希望能够将用户模型作为配置文件使用,并且 Devise 负责注册、登录和用户的创建。
我将用户的控制器创建为show
、和edit
,并将其用作“配置文件”。但是,我对以下内容感到困惑。如何使 Devise 与继承自的2 不会发生冲突?update
destroy
users_controller
ApplicationRecord
我将其他字段添加到DeviseCreateUsers
迁移中。我应该创建一个单独的create_users_migration
? 我希望用户使用电子邮件和密码进行注册,并且不一定需要字段:full_name
、:city
、:bio
来创建 User 的实例。
路线.rb
当我遵循设计文档时:https ://github.com/plataformatec/devise#configuring-controllers 我对以下内容有点困惑。我运行命令
文档是否不清楚是否应该将这些表单的视图添加到文件夹中log_in
,或者仅将生成的唯一模板的表单添加到文件夹中。sign_up
users
new.html.erb
devise/sessions
ruby-on-rails - 设计:注册后无法重定向到当前用户编辑个人资料
我目前正在使用 Rails 6 和 Devise 进行身份验证。我想在成功注册后重定向用户以编辑表单。但是,在用户注册后,它会重定向到根路径。
我建立registrations_controller.rb
这也是我要重定向的路线。
在这里,我也很困惑如何确保当前用户是当前用户,还是重定向知道是指当前用户?我想我必须做redirect_to '/users/#{current_user.id}/edit'
这是我的路线:
如何做到这一点?
webpack - Rails 6 webpacker找不到已安装模块的模块
在我的 Rails 6 项目中,我添加了 jQuery pushMenu
纱线添加推送菜单
来自https://www.npmjs.com/package/push-menu 现在我可以在 node-modules 文件夹中看到它,作为推送菜单。但是,当我尝试从包中导入或包含时,如:
我收到以下错误:
我的 package.json 文件看起来像这样
我在这里做错了什么?
ruby-on-rails - rspec ` describe_class` 是 `nil`
导轨 6.0.0.beta3
rspec 3.8.0
我刚刚安装rspec-rails
在我的 Rails 应用程序上。我跑了,rails g rspec:install
它生成了spec/spec_helper.rb
,
我唯一改变的是取消注释 spec_helper 中的建议设置spec/rails_helper.rb
.rspec
我gruf
用来运行 gRPC 服务器,而不是普通的 HTTP 服务器。
我还安装了gruf-rspec
打算用它来测试我的 gruf 控制器。
我的 gruf 控制器正在app/rpc/controllers/users_controller.rb
遵循 gruf 文档。编译后的 protobuf 文件也位于app/rpc/users_services_pb.rb
这是控制器的类签名:
我的问题是在我的测试中described_class
是nil
这是我的测试
测试失败。
为什么是described_class
nil,我该如何解决这个问题?
ruby-on-rails - 在 Rails 6 中使用 activestorage 时,如何在重新显示表单时保留文件?
在 Rails 6 中,我有一个带有文件字段的表单,我正在使用 activestorage 来存储文件。如果在提交表单后验证失败,则重新显示表单并显示验证错误。重新显示表单时如何保留添加到文件字段的文件,以便用户不必再次将文件添加到表单?
rails 5 已经有一个类似的问题:Active Storage: Best practice to retain/cache Uploaded file when form redisplays,但是那里的解决方案仅适用于 Rails 5。