问题标签 [ruby-on-rails-6.1]
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 - RoR 和 Ajax:如何使我的 Ajax 请求工作?
我正在尝试对活动存储文件的删除方法执行 Ajax 请求,这样我的页面就不会重新加载。
我有两个控制器:“project_steps”(我正在使用 wicked gem)和“projects”。
我的观点:project_steps/fourth_step.html.erb
我的部分:project_steps/_existing_files.html.erb
我的项目_控制器:
项目/delete_file_attachment.js.erb:
我的路线:
我的错误
我的删除工作正常,我明白为什么会出现错误,但我想知道如何让 Ajax 工作以及我做错了什么?很高兴根据需要提供尽可能多的代码!泰。
PS如果有人想提出一个解决方案而不是通过部分你觉得可能会更好!
ruby-on-rails - Rails 6.1 webpacker 减少了未使用的 JavaScript
我有一个使用 webpacker 和 tailwind 的 rails 6.1 应用程序。我的页面加载速度测试显示加载速度不佳,并建议“减少未使用的 JavaScript”。旁注:它还建议“减少未使用的 CSS”。所以清除似乎不起作用。但是在我执行页面加载速度测试的页面上,甚至没有使用chartkick/chart.js。所以看起来它正在加载每个 JS 库,尽管它甚至没有在页面上使用。
这是我的 packs/application.js 文件:
这是我的 tailwind.config.js 文件:
希望有人能帮忙!
openssl - 在带有 ruby 2.7 的 rails 6.0 之后的 OpenSSL::SSL::SSLError -> 到带有 ruby 3.0 的 rails 6.1
我已将我的 rails 6.0.4 应用程序更新到 6.1.3.2,并将 ruby 从 2.7.3 更新到 3.0.1
在开发中发送测试电子邮件时出现错误:
我没有改变我的配置,它是 - 现在是
我试图添加
openssl_verify_mode: 'none'
它没有任何区别。这是从 localhost:3000 发生的 - 我还没有部署更新的应用程序,显然,在更新之前我没有这个问题......
编辑:我已将 rails 6.1 应用程序移至 ruby 2.7.3,并且从 localhost:3000 发送的电子邮件没有问题。所以它必须是 ruby 3.0.1。感谢您的帮助!
ruby-on-rails - ArgumentError(错误数量的参数(给定 2,预期 1))升级到 rails 6.1.3.2 / ruby 3.0.0
从 rails 5.2.3 升级到 rails 6.1.3.2 时,以下代码一直失败
还使用 windows powershell 中的“rails console”在控制台中运行应用程序,并评论了上面的行给出错误:没有在模型中评论
在评论第 158 行后:
在命令提示符下运行“rails 控制台”时,控制台在管理员中失败,出现以下错误:
ruby-on-rails - 使用 cancancan 的 3 类角色的授权问题
我有用户表(由设计创建),我添加了一个角色列,可以是:管理员、经理和代理。在 user.rb 我放了一个像这样的枚举:
我正在使用 cancancan 并想做两件事:
1 - 如何根据注册用户的角色显示菜单或不同的按钮?在视图中,我是这样说的:
2 - 如何根据用户的角色显示特定页面?在我的 User.rb 我把这个:
我在ability.rb上尝试它:
在控制器上,我放了:
但我收到一个错误:
ruby-on-rails - 我应该使用哪个版本的 rails 6.1.3.2 或 rails 6.1.4(这是最新的)?
我正在从 6.1.3.2 中的 scrath 创建 rails 应用程序,但现在所有相关模块(activesupport activerecord)现在自动从 6.1.3.2 更新到 6.1.4。与 6.1.4 一起去好吗?如果不是,我怎样才能回到 6.1.3.2?
ruby-on-rails - MessagesController#create 中的 ActiveModel::UnknownAttributeError
美好的一天,我正在尝试在我的网站上创建一个聊天部分,但我不断收到ActiveModel::UnknownAttributeError in MessagesController#create
我不知道我在这里做错了什么,
我的路线是
这是我的对话模型
在消息模型中,app/models/message.rb:我有
在对话控制器中,app/controllers/conversations_controller.rb:我有
我认为主要问题是在我的对话索引页面上链接到消息页面的行在@message = @conversation.messages.new(message_params)
消息控制器中,app/controllers/messages_controller.rb:我有
在 app/views/conversations/index.html.erb
在 app/views/messages/index.html.erb 我有
如果有人能指导我做正确的事情,我将不胜感激,这是设置聊天系统的好方法吗?
ruby-on-rails - 如何使用rails 6安装expose-loader 3.0.0?
我仍然对 jQuery 有一些依赖。使用 Rails 6 和 Webpack 需要公开 jquery 否则会发生错误。我一直在使用expose-loader 1.0.3 一段时间没有问题,但是,如果我升级到expose-loader 2.0.0 或3.0.0,我会得到:
关于这个问题有几篇博客文章,但都围绕着 environment.js 中关联语法的格式...我尝试了几种不同的语法样式,它们都导致相同的错误。
使用expose-loader 1.0.3,我只需在 environment.js 中添加以下内容即可公开 jQuery:
如果与expose-loader >= 2 一起使用,同样的语法会导致上述错误。因此,不愉快的代码似乎在于 environment.loaders.append 调用。我已经阅读了 Changelog、文档、stackoverflow 和博客……但是,我尝试的任何东西似乎都无法满足新的 Expose-loader。
现在,我回到只使用 1.0.3 ......但我想征服这个并让 3.0.0 工作。
如何使用expose-loader 3.0.0 在Rails 6.1 中为Webpacker 公开jQuery?
我的 environment.js 文件包含以下内容:
ruby-on-rails - 验证失败:发件人必须存在,收件人必须存在
我正在尝试在我的网站上创建一个消息部分,用户可以在其中从用户显示页面向其他用户发送消息,但我不断收到ActiveRecord::RecordInvalid in UsersController#show
我不知道我在这里做错了什么,甚至不知道该怎么做,
我有一个正常的聊天部分,效果很好,这里有一些代码片段。
这是我的对话模型
在消息模型中,app/models/message.rb:我有
在对话控制器中,app/controllers/conversations_controller.rb:我有
app/controllers/messages_controller.rb:我有
在 app/views/conversations/index.html.erb
在 app/views/messages/index.html.erb 我有
这个聊天部分效果很好,但是现在我希望用户通过转到特定的用户显示页面来发送消息,单击发送消息,它应该将用户带到两个用户之间的消息页面,并且用户可以互相聊天,
这是我尝试过的
我的用户控制器:
我的用户/show.html.erb
当我尝试运行它时,我在顶部收到错误,我认为我做的不对;如何让用户从用户展示页面向其他用户发送消息?
javascript - 如何在 Rails 6.1 中使用邮件程序?
我目前正在尝试创建一个联系我们的表单,用户可以在其中向我的个人电子邮件地址发送任何类型的报告。为了这个例子,我们称它为my-email-address@email.com
。
目前我不太关心用户的电子邮件。假设我将使用以下信息。
from:
"my-email-address@email.com"
to:
"my-email-address@email.com"
subject:
"a subject name"
第 1 步:我views/home/contact_us.html.erb
使用 AJAX POST 请求创建了我的表单:
第 2步:我的家庭控制器和 routes.rb:
第 3 步:修改application_mailer.rb
为具有默认值from-email
:
第 4 步:修改contact_us_mailer.rb
为使用捕获的参数处理请求:
第 4 步:然后在views/contact_us_mailer
我创建了一个名为的新文件notify_server_via_email.html.erb
并添加了以下内容:
所以这是按顺序发生的:
- 用户填写表单并提交按钮。
- AJAX 发布请求到
/home/send_email_to_server
- 服务器接收请求并捕获参数并执行
mail()
函数
但是我收到以下错误:
我不知道是什么导致了 500 内部服务器错误。我目前正在开发方面工作,我知道我不应该这样做,但这只是为了测试目的,我的目标不是永远保留这个配置。另外,我遇到了与我的问题类似的StackOverflow 问题,但没有明确的答案,因为那是大学 wifi 阻止 smtp 请求工作。我正在尝试使用家庭 wifi。
另外,这里还有我的development.rb
命令供参考action_mailer
: