我在https://github.com/railstutorial/sample_app_rails_4克隆了回购并对它进行了很多更改(我用它作为我自己的应用程序的起点),现在我想将更改的应用程序推送到回复我自己的github帐户.
如何更改链接到的github repo?
使用下面的工厂时出现错误(如下所示).它通过运行暂时修复rake db:test:prepare
,但是,这仅修复了一次运行测试.我可以做些什么来获得更永久的修复?我应该用database_cleaner
吗?如果是这样,任何人都可以提供任何设置的见解(我使用RSpec,Capybara,Rails 4,Ruby 2)?谢谢!
我使用以下工厂:
FactoryGirl.define do
factory :user do
sequence(:username) { |n| "Person #{n}" }
sequence(:email) { |n| "person_#{n}@example.com" }
password "foobar"
password_confirmation "foobar"
factory :admin do
admin true
end
end
factory :key do
sequence(:name) { |n| "Key #{n}" }
sequence(:description) { |n| "This is key #{n}" }
root_note "C"
accidental "Natural"
third "Major"
user
end
factory :chord do
root_note "C"
accidental "Natural"
third "Major"
fifth ""
extension ""
sequence(:name) { |n| "Chord #{n}" } …
Run Code Online (Sandbox Code Playgroud) 例如,当我去时users/invitations/new
,唯一的领域是:email
.我想邀请一位用户,除了提供他们的电子邮件外,还提供:
user belongs_to company
)我创建了Users::InvitationsController < Devise::InvitationsController
:
class Users::InvitationsController < Devise::InvitationsController
private
def resource_params
params.permit(user: [:email, :invitation_token, :role, :company_id])[:user]
end
end
Run Code Online (Sandbox Code Playgroud)
我把这些字段添加到了users/invitations/new
.邀请发送正常,但是当我接受它并输入密码时,我的验证失败了No role is selected
(b/c验证).
如何在发送邀请之前设置这些字段并将其保留并在接受邀请时保存?谢谢!
我想渲染部分按分数排序,然后按名称排序(如果多个玩家具有相同的分数).
现在我正在使用这个:
<%= render @players.sort_by { |p| [p.scored_vote(current_week), p.last_name] } %>
Run Code Online (Sandbox Code Playgroud)
这是有效的,但它按升序对分数进行排序,我想按降序对它们进行排序.如何翻转分数的排序顺序,而不是名称,我仍然希望按升序排序?
谢谢!
我的目标是生成一份报告,显示一周中某一天和/或一天中某个车库的平均占用率(y轴).我的数据模型如下:
has_many
汽车和车库has_many
预约,through: :cars
has_many
预约此外,车库有一个场地capacity (integer)
,这是适合车库的最大车辆数量.
如果我有一个跨越过去6个月的约会列表,我想生成一个线图,其中x轴显示一周中的每一天,分为4小时间隔,y轴显示在给定的日/小时间隔的6个月期间内,平均占用率(车库中的车辆数/容量),我该如何收集这些数据进行报告?
例如,汽车是In
从一个约会的回归到下一个约会的提货,Out
从约会的提货到returned_at
时间.
从这些数据点建立连接到有意义地报告并将它们呈现给最终用户的最佳方式,我遇到了很多麻烦.
我使用的是Rails 4.1和Ruby 2.0.
编辑:SQL小提琴 - http://sqlfiddle.com/#!9/a72fe/1
我在控制器中有这个:
pickuptime = params[:appointment][:pickuptime]
pickuptime = DateTime.strptime(pickuptime, "%m/%d/%Y %l:%M %p %Z")
Run Code Online (Sandbox Code Playgroud)
rescue
如果我发DateTime.strptime
回Invalid Date
错误并将其重定向回上一页并显示flash消息"Invalid date",我想这样做.我怎么能做到这一点?
我使用的是Ruby 2.1.2和Rails 4.1.4.谢谢!
我有一个Damage
包含以下字段的表:
我想添加另一个要存储的字段Damagepoints
,它们是看起来像这样的JSON对象:
{ top: 50, left: 100 }
Run Code Online (Sandbox Code Playgroud)
顶部和左侧是damagepoint
图表上的坐标.的damagepoints
加入/通过使用Javascript使用者移除.
但是,我想在一个字段中存储这些数组damagepoints
,如下所示:
@damage.damagepoints = [{left: 40, top: 99}, {left: 100, top: 35}, {left: 150, top: 95}]
Run Code Online (Sandbox Code Playgroud)
我不想使用Damagepoint
具有has_many
关系的表来执行此操作,因为对此的所有更改都将使用Javascript完成,如果Damagepoints
由用户创建或删除,我只想从客户端传递更新的数组damagepoints
和用新数组替换数据库中的旧数据库.如果我使用了一个has_many
关系,我必须删除所有的Damagepoints
并在每次更新数组时创建每个新关系(因为它太复杂并且没有删除/添加特定损坏点的好处,因为我不需要跟踪历史).
存储数据的最简单方法是什么@damage.damagepoints
(如上)?我需要做的就是将它(通过控制器)传递给html5数据属性,以便Javascript可以将它用于将现有数据添加damagepoints
到图表中(基于它们的坐标),然后传递更新的数组(当用户点击"保存"按钮时,通过AJAX调用从html5数据属性返回控制器.
我正在使用Rails 4.2和Postresql.
谢谢!
我想使用"given"(或"let")设置一个变量,该变量可以通过spec.rb文件中的所有"功能"访问.我该怎么做呢?"给定"声明应该放在文件中的哪个位置?谢谢!
require 'spec_helper'
feature "Home page" do
given(:base_title) { "What Key Am I In?" }
scenario "should have the content 'What Key Am I In?'" do
visit '/static_pages/home'
expect(page).to have_content('What Key Am I In?')
end
scenario "should have the title 'What Key Am I In? | Home'" do
visit '/static_pages/home'
expect(page).to have_title("#{base_title}")
end
scenario "should not have a custom page title | Home'" do
visit '/static_pages/home'
expect(page).not_to have_title("| Home")
end
end
feature "About page" do
scenario "should have the content …
Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的表:
每一行都来自这个部分:
<div class="row chord-table-row" id= <%= "chord-#{chord.id}" %>>
<div class="small-1 columns"><%= chord.id %></div>
<div class="small-2 columns"><%= chord.name %></div>
<div class="small-3 columns"><%= chord.description %></div>
<div class="small-3 columns"><%= chord.user.username %></div>
<div class="small-3 columns"><%= link_to 'Approve', approve_path, class: 'chord-approval-button' %></div>
</div>
Run Code Online (Sandbox Code Playgroud)
如何让'Approve'按钮进入中的approve
动作chords_controller
,这将更新state
Chord 的字段,然后运行JS/Coffeescript approve.js.coffee
?
我(理想情况下)喜欢remote: true
在"批准"链接中使用,但我不确定如何确保控制器知道哪个和弦被批准.
现在#approve动作如下所示:
def approve
chord.approve
# this method is on the Chord model and is working
respond_to do |format|
format.js
end
end
Run Code Online (Sandbox Code Playgroud)
我想以正确的"轨道"方式做到这一点,所以任何指导/建议都将非常感谢!谢谢!
ruby ×8
javascript ×2
postgresql ×2
rspec ×2
activerecord ×1
ajax ×1
capybara ×1
devise ×1
factory-bot ×1
git ×1
github ×1
jquery ×1
json ×1
rescue ×1
sql ×1