Apart from the answers already given, I see in your views, your form variable didn't include request.FILES that allows for files to be saved via views. It should be form = PostForm(request.POST, request.FILES).
I can upload images from django admin panel but cannot to do same thing with django form , it saves any text but did not save images only, anyone help me pleasethis is my code:models.py:class Posts(models.Model):Ahal = 'Ahal'Balkan = 'Balkan'Dasoguz = 'Dasoguz'Lebap = 'Lebap'Mary = 'Mary'CHOOSE_REGION = {(Ahal,'Ahal'),(Balkan,'Balkan'),(Dasoguz,'Dasoguz'),(Lebap,'Lebap'),(Mary,'Mary')}name = models.CharField(max_length=30, blank=False, verbose_name='Ady')image = models.ImageField(blank=True, null=True, verbose_name='surat')text = models.TextField(verbose_name='gosmaça maglumat')price = models.FloatField(verbose_name='bahasy')region = models.CharField(max_length=30, choices=CHOOSE_REGION, blank=False, verbose_name='welaýat')district = models.CharField(max_length=30, blank=False, verbose_name='etrab')user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name='eýesi')phone = models.CharField(max_length=50, blank=False, verbose_name='telefon belgisi')published = models.DateTimeField(auto_now=True, verbose_name='satuwa çykan guni')forms.py:class PostForm(forms.ModelForm):class Meta:model = Postsfields = ['name','image','text','price','region','district','user','phone']views.py:def add_post(request):form = PostForm(request.POST or None)if form.is_valid():form.save()template = 'add_post.html'context = {'form':form}return render(request,template,context)settings.py:STATIC_URL = '/static/'STATICFILES_DIR = [Path(BASE_DIR,'static')]MEDIA_URL = '/media/'MEDIA_ROOT = Path(BASE_DIR,'media')urls.py:from django.conf.urls.static import staticfrom django.conf import settingsurlpatterns = [path('admin/', admin.site.urls),path('', include('posts.urls')),]urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)html form tag:--{% extends 'index.html' %}{% load static %}{% block content %}<form method="post" enctype="multipart/form-data">{% csrf_token %}{{form.media}}{{form.as_p}}<input type="submit" value="Save" name=""></form>{% endblock %}
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/a403ac50-9dfb-4a48-8007-9a52579886d4n%40googlegroups.com.
KeLLs
-- You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CADYqDX1-4P6g9G4Ss42J233aiDX8XyuFKmkzB%2BXq-K3xQ4Bnbg%40mail.gmail.com.
No comments:
Post a Comment