# Rails: ActiveRecord::RecordInvalid: Validation failed: Email can't be blank, Name is too short

**Code:** `ActiveRecord::RecordInvalid: Validation failed` · **Category:** Ruby / Rails · **Seen on:** Ruby

`save!`/`create!`/`update!` raised because validations failed.

## Meaning

Read the messages after "Validation failed:". Use `record.errors.full_messages` to inspect, fix the data/validations, or use non-bang `save` (returns false) in controllers and re-render the form. Seeds and jobs often call `create!` with incomplete data.

## Common causes

- Required attribute blank
- Uniqueness/format/length validation failing
- Callback or association validation (`belongs_to` required by default)
- Seeds/fixtures out of date
- Locale/enum values invalid

## Quick fix

1. Inspect `record.errors.full_messages`
2. Use `save` and handle `false`, or rescue `RecordInvalid`
3. `belongs_to :x, optional: true` if the association isn't required

## Detailed fix by platform

### Rails

1. `u = User.new(attrs); u.valid?; puts u.errors.full_messages`

## How to diagnose

1. **Messages** — Which fields?
2. **Association** — Required?
3. **Source** — Seeds/forms?

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/ruby/activerecord-recordinvalid-validation-failed)
