小编Rom*_*iev的帖子

如何在 Ruby on Rails 上嵌入带有 ActionText/Trix 的 iframe?

我找不到实现嵌入 youtube/vimeo 视频的功能的方法是 actiontext/trix。

这就是我想要实现的目标:

在此处输入图片说明

GIF 来源:https : //github.com/basecamp/trix/issues/206#issuecomment-198479999

我查看了所有类似的问题/解决方案,但似乎没有任何答案:

我们如何使用 Ruby on Rails 使用 actiontext/trix 正确嵌入 iframe?

ruby-on-rails trix actiontext

7
推荐指数
1
解决办法
1179
查看次数

切换到 Zeitwerk 时出现未初始化的恒定错误

目前我的目录中有以下文件jobs

# app/jobs/importer.rb
module Imporer
  def self.valid_importers
    # Do stuff
  end
end

# app/jobs/importer/custom_import_job.rb
class Importer::CustomImportJob < ApplicationJob
  def perform
    # Do stuff
  end
end
Run Code Online (Sandbox Code Playgroud)

使用经典代码加载器可以正常工作,但是当切换到 Zeitwerk 时,我NameError: uninitialized constant Importer::CustomImportJob在运行rails zeitwerk:check.

我尝试移动custom_import_job.rb到该jobs目录,但仍然收到相同的错误。添加app/jobs/importerconfig.autoload_paths没有帮助。

文件结构是否有问题,或者我在 Zeitwerk 设置中遗漏了某些内容?

ruby-on-rails zeitwerk

6
推荐指数
2
解决办法
6389
查看次数

将rails应用程序部署到Heroku错误ArgumentError:无效选项:和谐

我完成了我的博客,并尝试将其部署到 heroku,但我不断收到此错误。

我尝试更改我的 production.rb、Gemfile 和 application.js,这是其他有相同问题的人建议的,但都不起作用。这是我所做的

我将 Production.rb 更改为这个

        config.assets.js_compressor = Uglifier.new(harmony: true)
Run Code Online (Sandbox Code Playgroud)

应用程序.js:


        //= require jquery
        //= require jquery_ujs
        //= require turbolinks
        //= require ckeditor/init
        //= require_tree .
Run Code Online (Sandbox Code Playgroud)

我已将 jquery_ujs 更改为rails_ujs,但它没有改变任何内容

宝石文件


ruby '2.5.1'

group :production do
  gem 'pg'
  gem 'rails_12factor'
end

group :development do
  gem 'sqlite3', '~> 1.3.6'
end

gem 'rails', '~> 5.2.1'
gem 'puma', '~> 3.11'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.0.3', require: 'uglifier'
gem 'coffee-rails', '~> 4.2'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku

5
推荐指数
1
解决办法
862
查看次数

Mysql2::Client::LONG_PASSWORD (NameError)

我正在尝试在 Docker 的 Rails 应用程序中将我的 ruby​​ 版本从 2.4.5 升级到 2.4.9。

重建我的容器后,它因错误而停止:

uninitialized constant Mysql2::Client::LONG_PASSWORD (NameError)
Run Code Online (Sandbox Code Playgroud)

我的 mysql2 gem 版本被锁定:

gem 'mysql2', '0.3.21'
Run Code Online (Sandbox Code Playgroud)

我尝试将mysql2gem升级到 0.4.0 版本,但最终出现了另一个错误。

关于升级事物以使其正常工作的任何建议?

ruby-on-rails mysql2

5
推荐指数
1
解决办法
2899
查看次数

Vee-validate 子日期选择器组件

我正在尝试使用 vee-validate (vue 版本 2.5.3,vee-validate 版本 2.1.0-beta.7)将验证写入我的自定义组件。一切工作正常,除了我的日期选择器都没有通过验证。

家长VUE

template(v-for="(item, index) in items")
  div(class="initials")
    edit-date-field(:date="item.start"
                    :date_errors="errors.collect('start[' + index + ']')"
                    :name="startDate"
                    :data-vv-name="'start[' + index + ']'"
                    v-validate="'required'"
                    @date-picker="updateDate(item, 'start', $event)"
                    data-vv-as="date"
                    )
   edit-date-field(:date="item.end"
                   :date_errors="errors.collect('end[' + index + ']')"
                   :name="endDate"
                   :data-vv-name="'end[' + index + ']'"
                   v-validate="'required'"
                   data-vv-as="date"
                   @date-picker="updateDate(item, 'end', $event)")
 v-flex(xs12 sm12 md10 pa-2)
   v-text-field(
              slot="input"
              label="College"
              v-model="item.name"
              :error-messages="errors.collect('college[' + index + ']')"
              v-validate="'required'"
              :data-vv-name="'college[' + index + ']'"
              data-vv-as="college name"
              )
 v-flex(xs12 sm12 md10 pa-2)
   v-text-field(
              slot="input"
              label="Degree"
              v-model="item.degree"
              :error-messages="errors.collect('degree[' + …
Run Code Online (Sandbox Code Playgroud)

vuejs2 vee-validate

3
推荐指数
1
解决办法
7946
查看次数

API 请求的正确范围是什么

我需要授予一个应用程序访问另一个帐户的某些数据的权限。我进行 OAuth2 身份验证,但在 v2.0 中我们需要传递的不是资源,而是范围。例如,我想启动/停止虚拟机,或者只是列出它们,其合适的范围是什么?

我只找到了这个参考,但我想它对于新流程无效https://learn.microsoft.com/en-us/azure/role-based-access-control/resource-provider-operations#microsoftaad

azure azure-active-directory

2
推荐指数
1
解决办法
2992
查看次数

rspec - 如何测试 ActiveRecord::RecordNotFound?

我有一个方法可以更新人的属性,ActiveRecord::RecordNotFound如果找不到人的话它还有救。方法是:

  def update
    @people= People.find(params[:id])
    if @people.update(people_params)
      render json: { success: 'Success' }
    else
      render :edit
    end
  rescue ActiveRecord::RecordNotFound => e
    render json: { error: 'Failed') }
  end
Run Code Online (Sandbox Code Playgroud)

我想测试一下找不到记录时的情况,这是我现在的测试:

    let(:people) { create(:people) }
    let(:people_id) { people.id }
    let(:user) { people}
    # Other tests...
    context 'when person not found' do
      let(:exception) { ActiveRecord::RecordNotFound }

      # What should I write so that I can let the record not been found?

      before { allow(People).to receive(:find).and_raise(exception) }

      it 'responds with json containing …
Run Code Online (Sandbox Code Playgroud)

ruby unit-testing rspec ruby-on-rails

2
推荐指数
1
解决办法
1908
查看次数

使用个人帐户访问多租户应用程序 AAD

我有多租户应用程序,我希望所有类型的所有用户都可以访问我的应用程序。

我读到 AAD API 版本 2.0 可以访问所有类型的帐户,即工作、学校、访客、个人(https://learn.microsoft.com/en-US/azure/active-directory/develop/azure-广告端点比较)。所以我使用 ruby​​ lang 在 v2.0 端点上发出请求。这是我的网址: https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=some_id&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauthorize&response_type=code&scope=openid+profile+email+offline_access

当我尝试使用个人信用登录时,它显示“这看起来不像工作或学校电子邮件”。您无法使用个人帐户登录此处。请改用您的工作或学校帐户。”

我不知道我做错了什么。任何帮助将不胜感激

ruby azure oauth-2.0

1
推荐指数
1
解决办法
1971
查看次数

是否可以通过 REST API 列出 Azure 中的所有数据库

我需要接收 Microsoft Azure 帐户中现有数据库的列表。我确实看到了 REST API,例如 MySQL 服务器和数据库、PostgeSQL 服务器和数据库等。我的问题是是否有任何操作可以在一个请求中列出所有数据库,或者我是否需要一一搜索它们?提前致谢

azure azure-sql-database

1
推荐指数
1
解决办法
592
查看次数

Rails 强参数 - 无需密钥即可允许请求

我正在开发 Rails API,并在控制器中使用强参数。我的请求规范对于一种型号失败,但适用于所有其他型号。每个型号的控制器几乎都是相同的。

正如您在下面的规范中看到的,请求正文应该是{ "tag": { "name": "a good name" }}. 然而,这个规范使用的{ "name": "a good name" }应该是无效的,因为它缺少“标签”键。相同控制器功能的相同规格适用于许多其他型号。

另一个有趣的变化是,如果我更改控制器的强参数,params.require(:not_tag).permit(:name)它会因不包含“not_tag”键而引发错误。

  • 红宝石:2.6.5p114
  • 轨道:6.0.1
  • 预期响应状态:422
  • 收到响应状态:201

控制器

class TagsController < ApplicationController
  before_action :set_tag, only: [:show, :update, :destroy]

  # Other methods...

  # POST /tags
  def create
    @tag = Tag.new(tag_params)

    if @tag.save
      render "tags/show", status: :created
    else
      render json: @tag.errors, status: :unprocessable_entity
    end
  end

  # Other methods...

  private
    # Use callbacks to share common setup or constraints between actions.
    def …
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails strong-parameters

1
推荐指数
1
解决办法
1538
查看次数