我是Rails(和Ruby)的新手,所以我还没有把事情连接在一起。
我有一个控制器开始:
class AirportsController < ApplicationController
before_action :set_airport, only: [:show, :edit, :update, :destroy]
# GET /airports
# GET /airports.json
def index
@airports = Airport.all
end
自动生成的测试
test "should get index" do
get :index
assert_response :success
assert_not_nil assigns(:airports)
end
失败,因为get:index返回nil。 airports.yml文件仍处于默认状态:
one:
code: MyText
name: MyText
city: MyText
state: MyText
latitude: 1.5
longitude: 1.5
wac: 1
notes: MyText
country_id:
two:
code: MyText
name: MyText
city: MyText
state: MyText
latitude: 1.5
longitude: 1.5
wac: 1
notes: MyText
country_id:
从命令行我可以看到夹具正在正确加载到db \ test.sqlite3中。我找不到在哪里寻找为什么得到:索引没有获得有效的结果。任何人都可以指出我下一步的目标吗?
编辑: 好的,我知道了。这是导致问题的灯具中的空白country_id。机场模型belongs_to:country。我认为默认允许nil,但它看起来好像没有。当我将有效的country_id值放入灯具时,一切正常。
感谢您的帮助,伙计们。