I''m getting persistent SQL insert errors on the polymorphic unit
tests in AR, when running against the sybase adapter. I''ve been back
and forth through the code and still can''t figure out whether the
problem is on the adapter side or the rails side. The error is:
----------
ActiveRecord::StatementInvalid: ActiveRecord::StatementInvalid:
RuntimeError: SQL Command Failed for Tagging Create: INSERT INTO
taggings ([tag_id], [taggable_type], [taggable_id]) VALUES(NULL,
''Post'', 2)
Message: The column tag_id in table taggings does not allow null values.
: INSERT INTO taggings ([tag_id], [taggable_type], [taggable_id])
VALUES(NULL, ''Post'', 2): INSERT INTO taggings ([tag_id],
[taggable_type], [taggable_id]) VALUES(NULL, ''Post'', 2)
----------
The problem seems to be (near as I can tell) that it''s not finding
the Tag.id when it tries to insert the join row. Here''s the line in
the unit test that trips the error above, in
associations_join_model_test.rb, method
test_polymorphic_has_many_create_model_with_inheritance():
tagging = tags(:misc).taggings.create(:taggable => post)
Can anyone offer a hint as to what might be causing this? Something
funny with my environment? Something subtle missing from the sybase
adapter? I just updated my checkout to trunk r3712, and that didn''t
fix it. It''s been busted like this for at least a week or two, for me.
Thanks,
John
--
John R. Sheets
http://umber.sourceforge.net
http://writersforge.sourceforge.net