Problem with saving the form in bdd

Hello,
I am making a registration form for musicians.
In this form the musician must enter his name and the instrument he plays (from a list that is contained in my database).
I manage to import the list of instruments from my database but when the musician creates the record it is not created in my database, I think the problem comes from the fact that it does not register the instrument but I can’t understand the error.

models.py

from django.db import models

class Musician(models.Model):
    name= models.CharField(max_length=255)
    instrument = models.CharField(max_length=255)

class Instruments(models.Model):
    instrument_text = models.CharField(max_length=200)
    def __str__(self):
        return self.instrument_text

form.py

from django import forms
from .models import Musicien

class MemberForm(forms.ModelForm):    
    class Meta:
        model = Musicien
        fields = ("name", "instrument",)
        
        widgets ={
            'name': forms.TextInput(
                attrs={
                    'placeholder': 'Name',
                    'class': 'w-full px-3 py-2 outline-none text-black',
                }
            ),
            'instrument': forms.TextInput(
                attrs={
                    'placeholder': 'Instrument',
                    'class': 'w-full px-3 py-2 outline-none text-black',
                }
            ),

view.py

from django.shortcuts import render
from django.contrib import messages
from .form import MemberForm
from .models import Instruments

def homepage(request):
    instrument = Instruments.objects.all()
    if request.method == 'POST':
        form = MemberForm(request.POST);
        if form.is_valid():
            form.save()  
            form = MemberForm()
            messages.success(request, 'Thanks for inscription!')
    else:
        form = MemberForm()  
    return render(request, 'membres/index.html', locals())

index.html

<form action="/" method="POST">
{% csrf_token %}
<div class="mt-4">
            {{ form.name}}
    <span class="text-sm text-red-600">
           {{form.name.errors}}
    </span>
</div>

<div class="mt-4">
    <select class="instrument" name="instrument">
          {% for i in instrument %}
               <option value="i.instrument_text">{{ i.instrument_text }}</option>
          {% endfor %}
     </select>
     <span class="text-sm text-red-600">
          {{form.instrument.errors}}
     </span>
</div>
<input type="submit" value="Register" name="send" onClick="Choice(form)"/>
</form>

You probably want to review the Working with Forms page, particularly the sections on widgets and form fields.

You’re rendering the name field correctly by rendering form.name, but then you’re manually trying to render a select widget - while the form field is a CharField. You want to try and work with Django here rather than around it by defining the form as using a ChoiceField and not a text field, and then rendering that form field.

In fact, if the selection of an Instrument is restricted to those in the Instruments table, you might want to make the instrument field of the Model to be a foreign key to Instruments, and allow the form to create that field as a ModelChoiceField.

Oh i see, thank you I will try !