chr2017 Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 καλησπερα έχω κάνει ένα απλό website χρησιμοποιωντας DJANGO όπου ο χρήστης αφού κάνει σύνδεση θα μπορεί να εισάγει σε μια φόρμα στο template τρεις αριθμούς αυτοί οι αριθμοί εισάγονται σε μια μαθηματική συνάρτηση στο views.py όπου η συνάρτηση αυτή υπολογίζει ένα αποτέλεσμα και το επιστρέφει πίσω στον χρήστη καθώς και ενημερώνετε η προσωπική βάση κάθε χρήστη με το αποτέλεσμα αυτό το οποίο μπορεί να το δει και στο προσωπικό του page. το πρόβλημα μου είναι ότι η συνάρτηση για να δώσει το αποτέλεσμα πίσω στον χρήστη κάνει 5-6 λεπτά. Σε αυτό το διάστημα η σελίδα κάνει reload μέχρι να δώσει το αποτέλεσμα. αυτό το long reload μπορώ να το αποφύγω με κάποιο τρόπο χρησιμοποιωντας celery ή RabbitMQ και αν ναι πως γίνετε ? Δηλ θα ήθελα μετά το request να μην περιμένει ο χρήστης αλλά μόλις ολοκληρωθεί η διαδικασία να ενημερωθεί με κάποιο email ή ακόμα καλύτερα απλά να το δει στο προσωπικό του page όταν η διαδικασία αυτή ενημέρωση την προσωπική του βάση . views.py def math_alg(request): if request.method == "POST": test = request.POST.get('no1') test = request.POST.get('no3') test = request.POST.get('no3') #start algorith calc_math(no1,no1,no3,result) instance = rmodel.objects.create(user=request.user,rfield=result) instance.save return render(request, 'page.html', {'result': result}) html : <form action="" method="POST">{% csrf_token %} op math calculate:<br> <input type="number" name="no1" step="any" min="0" max="1" value="0.5"> <input type="number" name="no2" step="any" min="0" max="1" value="9999"> <input type="number" name="no3" step="any" min="0" max="1" value="1000000000000000"> <br> <input class="btn btn-primary" type="submit"> {{result }} </form>
pmav99 Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 http://www.insomnia.gr/topic/637336-handling-images-in-django/ edit Τώρα είδα ότι είσαι ο ίδιος...
nilosgr Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 Παραδειγμα δεν εχω, αλλα δες εδω http://django-q.readthedocs.io/en/latest/ 1
anon667 Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 Αν και σου έχουν πει στο άλλο thread κατι παρόμοιο, let's try one more time. - Γίνεται το POST -> Στέλνεις μήνυμα στο queue του RabbitMQ/ActiveMQ/Whatever your message broker is -> Redirect τον χρήστη κάπου που του λέει πως θα ενημερωθεί μέσω e-mail για την ολοκλήρωση or whatever. - Έχεις ένα python process το οποίο ακούει σε εκείνο το queue και μολίς λαμβάνει το μήνυμα ξεκινάει την επεξεργασία αυτού που κάνεις. Στο τέλος της επεξεργασίας κάνεις fire ένα send e-mail ή καλείς κάτι άλλο το οποίο κάπως κάνει αυτό που λες για την προσωπική σελίδα. Προφανώς στο μήνυμα που θα στέλνεις στο queue, θα πρέπει να περιέχονται όλα τα data που χρειάζεσαι για την επεξεργασία και για το reply μετά. 1
chr2017 Δημοσ. 9 Οκτωβρίου 2017 Μέλος Δημοσ. 9 Οκτωβρίου 2017 http://www.insomnia.gr/topic/637336-handling-images-in-django/ edit Τώρα είδα ότι είσαι ο ίδιος... βασικά θεωρώ ότι το ένα θέμα δεν εχει σχέση με το άλλο,αλλά πάλι αν τα θεωρείς το ίδιο πες μου να ζητήσω διαγραφή του post Παραδειγμα δεν εχω, αλλα δες εδω http://django-q.readthedocs.io/en/latest/ σε ευχαριστώ έχει πολύ ενδιαφέροντα θέματα βέβαια χρειάζεται και πολύ δουλειά να φτάσω στο επίπεδο αυτό Αν και σου έχουν πει στο άλλο thread κατι παρόμοιο, let's try one more time. - Γίνεται το POST -> Στέλνεις μήνυμα στο queue του RabbitMQ/ActiveMQ/Whatever your message broker is -> Redirect τον χρήστη κάπου που του λέει πως θα ενημερωθεί μέσω e-mail για την ολοκλήρωση or whatever. - Έχεις ένα python process το οποίο ακούει σε εκείνο το queue και μολίς λαμβάνει το μήνυμα ξεκινάει την επεξεργασία αυτού που κάνεις. Στο τέλος της επεξεργασίας κάνεις fire ένα send e-mail ή καλείς κάτι άλλο το οποίο κάπως κάνει αυτό που λες για την προσωπική σελίδα. Προφανώς στο μήνυμα που θα στέλνεις στο queue, θα πρέπει να περιέχονται όλα τα data που χρειάζεσαι για την επεξεργασία και για το reply μετά. σε ευχαριστώ σαν θεωρία εύκολα μου ακούγονται αλλά νομίζω θα είναι δύσκολο για εκτέλεση
tsofras Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 Άσχετος με django αλλά κανέναν δεν προβληματίζει ότι κάτι τόσο απλό κάνει 5-6 λεπτά? Μήπως να δεις γιατί αργεί τόσο? 1
pmav99 Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 σαν θεωρία εύκολα μου ακούγονται αλλά νομίζω θα είναι δύσκολο για εκτέλεση Τα links που σου έχουμε δώσει έχουν αναλυτικότατα παραδείγματα. Αν θες βοήθεια κάπου ανέβασε τον κώδικα σου και κάνε συγκεκριμένες ερωτήσεις. Από πλευράς design το πρόβλημα (και η λύση) είναι ακριβώς ίδιο με αυτό που είχες πριν 6 μήνες. @tsofras Ο χρόνος δεν καταναλώνεται από το django αλλά από την calc_math() 1
chr2017 Δημοσ. 9 Οκτωβρίου 2017 Μέλος Δημοσ. 9 Οκτωβρίου 2017 Άσχετος με django αλλά κανέναν δεν προβληματίζει ότι κάτι τόσο απλό κάνει 5-6 λεπτά? Μήπως να δεις γιατί αργεί τόσο? @tsofras σου απάντησε ο @pmav99 Τα links που σου έχουμε δώσει έχουν αναλυτικότατα παραδείγματα. Αν θες βοήθεια κάπου ανέβασε τον κώδικα σου και κάνε συγκεκριμένες ερωτήσεις. Από πλευράς design το πρόβλημα (και η λύση) είναι ακριβώς ίδιο με αυτό που είχες πριν 6 μήνες. @tsofras Ο χρόνος δεν καταναλώνεται από το django αλλά από την calc_math() είναι πάρα πολύ καλά παραδείγματα θα αρχίσω να δοκιμάζω να εφαρμόσω κάποια παραδείγματα στην εφαρμογή μου και ελπίζω να καταφέρω αυτό που θέλω.
tsofras Δημοσ. 9 Οκτωβρίου 2017 Δημοσ. 9 Οκτωβρίου 2017 Ναι το κατάλαβα , αυτό ρωτάω είναι φυσιολογικό να κάνει τόσο χρόνο?
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα