Fix version author placeholder
This commit is contained in:
parent
b3ef2853b6
commit
11a8698a6f
|
|
@ -4,6 +4,14 @@ from .models import Recipe, Version, Ingredient
|
|||
class VersionForm(ModelForm):
|
||||
recipe_id: int
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
placeholder = None
|
||||
if 'author_placeholder' in kwargs:
|
||||
placeholder = kwargs.pop('author_placeholder')
|
||||
super().__init__(*args, **kwargs)
|
||||
if placeholder:
|
||||
self.fields['author'].widget.attrs.update({'placeholder': placeholder})
|
||||
|
||||
class Meta:
|
||||
model = Version
|
||||
fields = ['label', 'slug', 'body', 'author']
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ def add_version(request, slug_recipe):
|
|||
version_initial = {}
|
||||
|
||||
if request.method == 'POST':
|
||||
version_form = VersionForm(request.POST, prefix=VERSION_FORM_PREFIX, initial=version_initial)
|
||||
version_form = VersionForm(request.POST, prefix=VERSION_FORM_PREFIX, initial=version_initial, author_placeholder=request.user.first_name if request.user.first_name else request.user.username)
|
||||
ingredients_formset = IngredientFormSet(request.POST, queryset=Ingredient.objects.none(), prefix=INGREDIENTS_FORMSET_PREFIX)
|
||||
version_form.recipe_id = recipe.id # type: ignore
|
||||
|
||||
|
|
@ -66,8 +66,7 @@ def add_version(request, slug_recipe):
|
|||
return HttpResponseRedirect(reverse('version', kwargs={'slug_recipe': version.recipe.slug, 'slug_version': version.slug}))
|
||||
|
||||
else:
|
||||
version_form = VersionForm(prefix=VERSION_FORM_PREFIX, initial=version_initial)
|
||||
version_form.fields['author'].widget.attrs['placeholder'] = request.user.first_name if request.user.first_name else request.user.username
|
||||
version_form = VersionForm(prefix=VERSION_FORM_PREFIX, initial=version_initial, author_placeholder=request.user.first_name if request.user.first_name else request.user.username)
|
||||
ingredients_formset = IngredientFormSet(queryset=Ingredient.objects.none(), prefix=INGREDIENTS_FORMSET_PREFIX)
|
||||
|
||||
return render(request, 'add-version.html', {'version_form': version_form, 'ingredients_formset': ingredients_formset})
|
||||
|
|
@ -79,7 +78,7 @@ def edit_version(request, slug_recipe, slug_version):
|
|||
version = get_object_or_404(Version, recipe=recipe, slug=slug_version)
|
||||
|
||||
if request.method == 'POST': # TODO refactor with add_version
|
||||
version_form = VersionForm(request.POST, prefix=VERSION_FORM_PREFIX, instance=version)
|
||||
version_form = VersionForm(request.POST, prefix=VERSION_FORM_PREFIX, instance=version, author_placeholder=request.user.first_name if request.user.first_name else request.user.username)
|
||||
ingredients_formset = IngredientFormSet(request.POST, queryset=version.ingredients.all(), prefix=INGREDIENTS_FORMSET_PREFIX) # type: ignore
|
||||
version_form.recipe_id = recipe.id # type: ignore
|
||||
|
||||
|
|
@ -97,7 +96,7 @@ def edit_version(request, slug_recipe, slug_version):
|
|||
|
||||
return HttpResponseRedirect(reverse('version', kwargs={'slug_recipe': version.recipe.slug, 'slug_version': version.slug}))
|
||||
else:
|
||||
version_form = VersionForm(instance=version, prefix=VERSION_FORM_PREFIX)
|
||||
version_form = VersionForm(instance=version, prefix=VERSION_FORM_PREFIX, author_placeholder=request.user.first_name if request.user.first_name else request.user.username)
|
||||
ingredients_formset = IngredientFormSet(queryset=version.ingredients.all(), prefix=INGREDIENTS_FORMSET_PREFIX) # type: ignore
|
||||
|
||||
return render(request, 'edit-version.html', {'version_form': version_form, 'ingredients_formset': ingredients_formset})
|
||||
|
|
|
|||
Loading…
Reference in a new issue