因此,我正在与一位同事合作,该同事添加了一些其他迁移文件,并且在按正常程序提取版本后,我运行了rails db:migrate。我最终收到以下错误:
Index name 'index_authorizations_on_user_id' on table 'authorizations' already exists
ArgumentError: Index name 'index_authorizations_on_user_id' on table 'authorizations' already exists
Run Code Online (Sandbox Code Playgroud)
因此,我去检查了架构,该表已经存在。那为什么会失败呢?通常,过去在迁移时,它仅生成新的表条目/更新,所以为什么不忽略它呢?
我尝试进行回滚并获取:此迁移使用remove_columns,它不是自动可逆的。
我试着做bin / rails db:migrate RAILS_ENV = development并且遇到相同的错误。
我已经完成了db:reset和db:drop,这一切又回到了我无法运行的未决迁移问题。我究竟做错了什么?
他们添加了以下迁移:20171024074328_create_authorizations.rb
class CreateAuthorizations < ActiveRecord::Migration[5.1]
def change
create_table :authorizations do |t|
t.string :provider
t.string :uid
t.references :user, foreign_key: true
t.timestamps
add_index :authorizations, :user_id
add_index :authorizations, [:provider, :uid], unique: true
end
end
Run Code Online (Sandbox Code Playgroud)
结束
postgresql ruby-on-rails rails-migrations rails-activerecord
我的位置工厂中有以下内容:
FactoryBot.define do
factory :location do
name 'MyString'
hours_operation 'MyString'
abbreviation 'MyString'
address_1 'MyString'
address_2 'MyString'
city 'MyString'
state 'MyString'
postal_code 1
phone 'MyString'
fax 'MyString'
association :region
end
end
Run Code Online (Sandbox Code Playgroud)
我的地区工厂有以下内容:
FactoryBot.define do
factory :region do
name 'MyString'
end
end
Run Code Online (Sandbox Code Playgroud)
Region has_many location 和 Locations Beings_to region。
但是在我的测试中,我不断收到验证失败:区域必须存在。
我尝试了以下方法:
after(:create) do |location, _evaluator|
create_list(:region, evaluator.region, location: location)
end
association :region, factory: region
before(:create) do |region|
region.location << FactoryBot.build(:location, region: region)
end
Run Code Online (Sandbox Code Playgroud)
我也试过在地区工厂:
factory :region_with_location do
after(:create) do |region|
create(:location, region: …Run Code Online (Sandbox Code Playgroud) 所以我试图查询数据库中的单个用户,但最终得到:
"Field 'userSingle' doesn't accept argument 'first_name'"
Run Code Online (Sandbox Code Playgroud)
当我运行以下查询时,我在 GraphiQL 中得到了它:
query GetSingleUser {
userSingle(first_name: "Test"){
first_name
last_name
}
}
Run Code Online (Sandbox Code Playgroud)
在我的 query_type.rb 我有以下内容:
field :userSingle, !types[Types::UserType] do
resolve -> (obj, args, ctx) {
argument :first_name, !types.String
argument :id, types.ID
User.find(id: args[:id])}
end
Run Code Online (Sandbox Code Playgroud)
最初我有:
field :userSingle, !types[Types::UserType] do
resolve -> (obj, args, ctx) {User.find(id: args[:id])}
end
Run Code Online (Sandbox Code Playgroud)
同样的问题。如果我取出 id: 同样的问题。也有同样的问题:
field :userSingle, !types[Types::UserType] do
resolve -> (obj, args, ctx) {
argument :first_name, !types.String
argument :id, types.ID
user = User.find_by(
id: args[:id],
first_name: args[:first_name]) …Run Code Online (Sandbox Code Playgroud) 我正在清理一些代码,但在 Rubocop 中我不断收到这种攻击。它适用于本节:
def load_user
@user = OtherUser.friendly.find(params[:id])
raise Other::NotFoundError.new('user') if @user.blank?
end
Run Code Online (Sandbox Code Playgroud)
我以为我可以简单地在加注上方放置一个救援 ArgumentError ,但这并没有解决它。如何解决异常类?
编辑:将其更改为
raise Other::NotFoundError, 'user' ? if @user.blank?
Run Code Online (Sandbox Code Playgroud)
结果在下一行出现意外的令牌 kDEF,然后在末尾出现意外的令牌 $end。
我正在努力创建一个客户的网站,使其可访问.我们正在通过YouTube视频从iFrame中提取视频.视频工作正常,更新了隐藏式字幕等.但是,YouTube频道徽标上显示的咏叹调标签显示为"照片图像",不符合辅助功能指南.
<a class="ytp-title-channel-logo" target="_blank" data-visual-id="2" href="https://www.youtube.com/channel/lettersandsuch" aria-label="Photo image of " style="background-image: url("https://filepathforphoto.png");"></a>
Run Code Online (Sandbox Code Playgroud)
因为它在iFrame中我不知道我们是否可以用JS实际获取和更改iFrame.我已经尝试在改变徽标和更新频道名称的YouTube帐户中搞乱,但它没有达到咏叹调标签.
我尝试用jQuery更改它,但我不认为我做得对.我在iFrame上放了一个id并应用了这个:
$(document).ready(function(){
var iFrameDOM = $("iframe#frameID").contents();
iFrameDOM.find('.ytp-title-channel-logo').attr('aria-role', 'something');
})
Run Code Online (Sandbox Code Playgroud)
它没有在本地显示任何错误,但没有应用代码更改.有没有办法更改YouTube频道徽标上的咏叹调标签?
所以,自从我和人际关系玩起来已经有很长一段时间了,我想确保我做得对.
在我的客户模型中,我有:
class Client < ApplicationRecord
has_many :projects, dependent: :destroy
end
Run Code Online (Sandbox Code Playgroud)
在我的项目模型中,我有:
class Project < ApplicationRecord
belongs_to :client
end
Run Code Online (Sandbox Code Playgroud)
所以我知道那是设定的.然后抓住我放在项目控制器中的项目:
def create
@client = Client.find(params[:client_id])
@project = @client.project.new(project_params)
flash[:notice] = "Project created successfully" if @client.project << @project
respond with @project, location: admin_project_path
end
Run Code Online (Sandbox Code Playgroud)
我是否需要在我的节目中放一些同样的东西?
关系中我还缺少什么?
在不改变HTML的情况下,我怎么只选择CSS的无序列表的父级?
我有以下内容:
<div class="content">
<ul class="navigation">
<li><a href="#">Item 1</a>
<ul>
<li><a href="#">Sub Item A</a></li>
<li><a href="#">Sub Item B</a></li>
</ul>
</li>
<li><a href="#">Item 2</a></li>
</ul>
</div>Run Code Online (Sandbox Code Playgroud)
我只需要抓取第1项来改变它的CSS.我尝试过这样的事情:ul li a - 无法工作,因为它会抓住第2项
有什么想法吗?
我的 gitignore 文件如下所示:
# Ignore bundler config.
/.bundle
# Ignore all logfiles and tempfiles.
/log/*
!/log/.keep
/tmp
coverage/
public/system/
.DS_Store
.env
logfile
development.log
Run Code Online (Sandbox Code Playgroud)
无论出于何种原因,我的提交和拉取请求中都会出现development.log 文件。现在我有一个开放的拉取请求,其中包含完整的development.log 文件。我该如何删除它?
我尝试过以下方法:
结束当前分支资源没有上游分支。要推送当前分支,请将远程设置为上游,请使用 git push --set-upstream origin 资源。我这样做了,然后我检查了我的 PR,文件仍然在那里,因为显然它没有编辑。
我也尝试过
这里的问题是该文件存在于本地,并且应该存在,但我希望将其从 PR 中删除。
如何从拉取请求中删除文件但不在本地删除它?
css ×1
factory-bot ×1
git ×1
graphiql ×1
graphql ×1
html ×1
jquery ×1
postgresql ×1
rubocop ×1
youtube ×1
youtube-api ×1