Filament Resource Create/Edit BadMethodCallException Call to undefined method HasMany::associate()

I have a User model as well as a Patch model, every patch HasMany users. What I am trying to achieve is: I want to add Users to Patch.
Code:
class User extends Authenticatable
{
    protected $fillable = [
        'name',
        'email',
        'password',
        'patch_no'
    ];
    //....

    //....
    public function patch(): BelongsTo
    {
        return $this->belongsTo(Patch::class);
    }
}

class Patch extends Model
{
    use HasFactory;

    protected $fillable = ['code'];

    public function users(): HasMany
    {
        return $this->hasMany(User::class);
    }

}

User migration:
public function up(): void
    {
        Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamp('email_verified_at')->nullable();
            $table->string('password');
            $table->foreignId('patch_id')->nullable()->constrained('patches');
            $table->rememberToken();
            $table->timestamps();
        });
    }

Patch migration
Schema::create('patches', function (Blueprint $table) {
            $table->id();
            $table->string('code');
            $table->timestamps();
        });

After this I created a filament-resource: PatchResource. Inside the form I did:
public static function form(Form $form): Form
    {
        return $form
            ->schema([
                Forms\Components\TextInput::make('code')
                    ->required()
                    ->maxLength(255),
                Forms\Components\Select::make('users')
                    ->relationship('users', 'name')
                    ->multiple()
            ]);
    }


What did I do wrong here?
Was this page helpful?