Printable Version of Topic
Click here to view this topic in its original format |
თბილისის ფორუმი > პროგრამირება > django |
Posted by: gugamaxara 9 Nov 2017, 02:08 |
გამარჯობათ კოდს დავწერ და იქნებ ვინმე დამეხმაროთ ვერ გავარკვიე რაშია შეცდომა, ესეიგი რას ვცდილობ ინფორმაციის შეტანა მინდა ბაზაში HTML - დან ფორმების განყოფილება: class RegForm(forms.ModelForm): password = forms.CharField(widget=forms.PasswordInput) class Meta: model = User fields = ['username', 'password', 'information'] ვიუს განყოფილება: class RegFormView(View): form_class = RegForm template_name = 'sabajo_deklarireba/registrationpage.html' def get(self, request): form = self.form_class(None) return render(request, self.template_name,{'form': form}) def post(self, request): form = self.form_class(request.POST) if form.is_valid(): user = form.save(commit=False) #cleaned data username = form.cleaned_data['username'] password = form.cleaned_data['password'] information = form.cleaned_data['information'] user.set_password(password) user.save() else: raise Http404("You are looser") return render(request, self.template_name, {'form': form}) ანუ პრობლემა რა არის, is_valid() ით რო ვამოწმებ აშკარად რომელიღაც ფილდი ერრორზე გადის ან ყველა, თითო-თითოდ ვცადე ანუ ჯერ მხოლოდ username ის შეტანა ვცადე, მაგრამ მაინც else - ში შედის, სამივე ფილდი ვცადე სათითაოდ და აშკარად არცერთი არაა valid ხოდა იქნებ ვინმემ იცოდეთ რისი ბრალია შეიძლება იყოს მადლობა... |
Posted by: Svani91 9 Nov 2017, 03:05 | ||
gugamaxara
form = self.form_class(data=request.POST) და ასევე form.errors ნახე, რამე თუ არის მანდ წყარო: stackoverflow |
Posted by: RexxaR 9 Nov 2017, 10:20 | ||
მგონი მანდ პრობლემა ამაშია >>> {'form': form} 100% დარწმუნებული არ ვარ, მეც გუშინ დავიწყე ჯანგოს სწავლა მარა ეგ რენდერის ფუნქცია იღებს კონტექსტს სადაც შენ Dict-ს აწვდი, რომელიც სავარაუდოდ სხვანაირად უნდა იყოს დაფორმატებული. ასევე რაც წინა პოსტში გითხრა ეგეც სწორია data=request.POST აუცილებელია |
Posted by: gugamaxara 16 Nov 2017, 12:06 |
მოკლედ ვერ გავაკეთე რა, forms.error ით ვნახე და This field is required ამას მიწერს იქნებ ვინმემ მიშველოთ |
Posted by: gogua 16 Nov 2017, 12:23 | ||
სალამი, User მოდლს არ აქვს information ველი, რაც ფორმაში გიწერია თან required გიწერია და მოდელი დადე სადმე ოვერრაიდი თუ გაქვს გაკეთებული ან წაშალე ეგ ველი ან დალოგე POST მეთოდში რა მოგდის, ასე ზეპირად როგორ დაგეხმაროთ |
Posted by: gugamaxara 16 Nov 2017, 12:59 |
gogua გამარჯობა ვიპოვე შეცდომა http://www.picz.ge აქ fields - ში username ვწერდი username1 ის მაგივრად, მაგრამ ახლა სხვა შეცდომაა, თითქოს ინახავს ინფორმაციას, მაგრამ არაფერი არ ჩანს ბაზაში http://www.picz.ge gugamaxara თვითონ შელიდან მაქვს დამატებული და დანარჩენები input - დან დამატებულები, რომლებიც არ ჩანს... * * * გავასწორე, ბაზის field - ის სახელი არ ემთხვეოდა form - ის field - ის სახელს |
Posted by: gogua 16 Nov 2017, 14:28 |
მშვენიერი თუ გაასწორე |
Posted by: G1oba1 16 Nov 2017, 18:23 | ||
გამარჯობათ... ასზრზე არ ვარ ამ ჯანგოსი მარა შემოვიხედე ვიფიქრე დავეხმარო იქნებათქვა )) ახლა ინტერესი გამიჩნდა პირიქით და თქვენი დახმარება მინდა თუ მინდა რომ კლასს სხვადასხვა კონსტრუქტორი ქონდეს ვერა??
|
Posted by: gogua 16 Nov 2017, 20:13 | ||||
პითონთან რამდენად კარგად ხარ? სხვადასხვა კონსტრუქტორი რას ნიშნავს? სხვა კლასის ექსტენდები? |
Posted by: G1oba1 17 Nov 2017, 02:53 | ||||
gogua
ამაზე ვამბობ ეს ჯავაა არა პითონი არ ვიცი |
Posted by: Svani91 17 Nov 2017, 03:00 | ||||
G1oba1 რამდენადაც მე ვიცი, არ არის პითონში ფუნქციების კლასიკური overload ალტერნატივაა არგუმენტები default მნიშვნელობებით
ან variable-length argument list
|
Posted by: Lilith 17 Nov 2017, 07:10 | ||||||||
Svani91
მართალი ბრძანდებით
ან, რაც ყველაზე ახლოსაა overload-თან:
|
Posted by: G1oba1 17 Nov 2017, 21:07 |
Svani91 Lilith რა უბედური სინტაქსი აქვს... |
Posted by: Svani91 17 Nov 2017, 23:19 |
Lilith **kwargs - სა და *args - ს შორის არ ვიცოდი რა სხვაობა იყო კარგად მაქვს სასწავლი ჯერ კიდევ საწყისები |
Posted by: Lilith 17 Nov 2017, 23:58 | ||||||||
Svani91
*args - მოიცავს ყველა არგუმენტს რომელიც გადაეცემა ფუნქციას და აქვს list-ის სახე. **kwargs - არის იგივე, ოღონდ dictionary. მაგალითად:
დაბეჭდავს შემდეგს:
G1oba1
მუღამს თუ დაუჭერ შეგიყვარდება... |
Posted by: აბიტურიენტი 18 Nov 2017, 00:31 | ||
სადააქვს პითონს სინტაქსი ფსევდოკოდია ფაქტიურად |
Posted by: HedPe 18 Nov 2017, 13:35 |
gugamaxara გამარჯობა, CreateView ცადე. https://docs.djangoproject.com/en/1.11/ref/class-based-views/generic-editing/#django.views.generic.edit.CreateView |
Posted by: gugamaxara 18 Nov 2017, 15:08 |
HedPe გამარჯობა, ეგ კი გავასწორე, მაგრამ ახლა სხვა რაღაცაში მინდა დახმარება ესეიგი ბაზაში მინდა შევინახო HTML input და შემოტანილი თარიღი, HTML - ში input აღებული მაქვს როგორც 'datetime-local' ტიპი http://www.picz.ge ასეთი სახით რაც შეეხება ბაზაში ამის შესაბამისი ფილდი მაქვს ამ ტიპის: http://www.picz.ge ხოდა რა პრობლემა მაქვს ეხლა, აშკარად რომ ვავსებ HTML - ში ამ თარიღს, არ ინახავს ბაზაში, და ფორმების ერრორებში მიწერს This field is required აქედან გამომდინარე რა უნდა გკითხოთ models.DateTimeField(auto_now_add=True) ეს სწორად მაქვს აღნიშნული თუ ბაზაში თარიღის შესანახად სხვას იყენებენ? მადლობა |