fix: name fields being updated instead of first_name and last_name

This commit is contained in:
2025-11-03 12:25:23 +01:00
parent 197b26cf08
commit 6bf5900533
4 changed files with 34 additions and 21 deletions

View File

@@ -19,7 +19,8 @@ const form = ref({
ico: 0,
hiring: false,
contact: {
name: '',
first_name: '',
last_name: '',
email: '',
phone: ''
}
@@ -34,7 +35,8 @@ watch(data, (newData) => {
form.value.address = newData.address;
form.value.ico = newData.ico;
form.value.hiring = !!newData.hiring;
form.value.contact.name = newData.contact?.name;
form.value.contact.first_name = newData.contact?.first_name;
form.value.contact.last_name = newData.contact?.last_name;
form.value.contact.email = newData.contact?.email;
form.value.contact.phone = newData.contact?.phone;
loading.value = false;
@@ -102,7 +104,10 @@ function cancel() {
<h3 class="mb-3">Kontaktná osoba</h3>
<v-text-field v-model="form.contact.name" label="Meno a priezvisko" required
<v-text-field v-model="form.contact.first_name" label="Meno" required variant="outlined"
class="mb-3"></v-text-field>
<v-text-field v-model="form.contact.last_name" label="Priezvisko" required
variant="outlined" class="mb-3"></v-text-field>
<v-text-field v-model="form.contact.email" label="E-mail" type="email" required

View File

@@ -15,7 +15,8 @@ const loading = ref(true);
const saving = ref(false);
const form = ref({
name: '',
first_name: '',
last_name: '',
email: '',
phone: '',
student_data: {
@@ -24,27 +25,25 @@ const form = ref({
address: ''
}
});
const { data } = await useSanctumFetch<User>(`/api/students/${studentId}`);
// Načítanie dát študenta
watch(data, (newData) => {
if (newData) {
student.value = newData;
form.value = {
name: newData.name || '',
email: newData.email || '',
phone: newData.phone || '',
student_data: {
study_field: newData.student_data?.study_field || '',
personal_email: newData.student_data?.personal_email || '',
address: newData.student_data?.address || ''
}
};
form.value.first_name = newData.first_name;
form.value.last_name = newData.last_name;
form.value.email = newData.email;
form.value.phone = newData.phone;
form.value.student_data.study_field = newData.student_data!.study_field;
form.value.student_data.personal_email = newData.student_data!.personal_email;
form.value.student_data.address = newData.student_data!.address;
}
navigateTo('/dashboard/admin/students');
}
);
});
// Uloženie zmien
async function saveChanges() {
@@ -91,7 +90,10 @@ function cancel() {
<v-card-title>Základné údaje</v-card-title>
<v-card-text>
<v-form>
<v-text-field v-model="form.name" label="Meno a priezvisko" required variant="outlined"
<v-text-field v-model="form.first_name" label="Meno" required variant="outlined"
class="mb-3"></v-text-field>
<v-text-field v-model="form.last_name" label="Priezvisko" required variant="outlined"
class="mb-3"></v-text-field>
<v-text-field v-model="form.email" label="E-mail (prihlasovací)" type="email" required