DB에 행을 만들 수 없습니다. Rails는 명백하게 시작한 다음 아무런 오류없이 즉시 트랜잭션을 롤백합니다. 나는 sqlite3을 사용하고있다.오류없이 자동 롤백 하시겠습니까?
logger.debug("creating billing name...")
BillingName.create() #also tried BillingName.new.save
logger.debug("...created")
로그 파일 :
creating billing name...
^[[1m^[[36m (0.1ms)^[[0m ^[[1mbegin transaction^[[0m
^[[1m^[[35m (0.1ms)^[[0m rollback transaction
...created
select * from billing_name
보여줍니다 실제로 어떤 항목이 추가되지 않았습니다. 거래가 거부되는 이유를 어떻게 알 수 있습니까?
아마도 BillingName이 유효성 검사에 실패 했습니까? create 문을'BillingName.create! '로 변경하고 Rails가 로그에 던진 예외를 확인하십시오. – ipd
"거래가 거부되는 이유를 어떻게 알 수 있습니까?" 'BillingName.new (name : 'blabla')'등을 검사하고'.valid? '로 테스트한다 (DB에 항목이 저장되어 있는지 테스트하기 위해'.persisted?'를 참조) – MrYoshiji
'billing_name = BillingName.new; billing_name.save; console.log (billing_name.errors.inspect.to_s)'를 실행하여 오류가 무엇인지 확인하십시오. – spullen