File handling in Django

219 views
Skip to first unread message

Mayank Prajapati

unread,
Jan 27, 2025, 5:34:10 PMJan 27
to Django users
I am making a full stack project with JavaScript and react for front end , Postgre SQL for database and Django for backend and Django rest framework for APIs. So in models.py file there's one field which is to be removed and another field is to be added at the end. This process has to be done once daily at specific time. For example, assume there are five fields in my models i.e. A,B,C,D and E. At some specific time field B will be removed and new field E will be added after D, again same process will repeat next day field C will be removed and new field F will be added after E. I can implement this process through python file handling and "with" method. 

So my question is, should i implement this process in my Django project? Will this process work efficiently in production environment?

Otecina

unread,
Jan 27, 2025, 10:12:54 PMJan 27
to django...@googlegroups.com

It will work normally, go ahead.


On Mon, Jan 27, 2025, 11:33 PM Mayank Prajapati <mayankpra...@gmail.com> wrote:
I am making a full stack project with JavaScript and react for front end , Postgre SQL for database and Django for backend and Django rest framework for APIs. So in models.py file there's one field which is to be removed and another field is to be added at the end. This process has to be done once daily at specific time. For example, assume there are five fields in my models i.e. A,B,C,D and E. At some specific time field B will be removed and new field E will be added after D, again same process will repeat next day field C will be removed and new field F will be added after E. I can implement this process through python file handling and "with" method. 

So my question is, should i implement this process in my Django project? Will this process work efficiently in production environment?

--
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...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/django-users/75091646-157a-4b2e-8aa0-0c05b2d50b0fn%40googlegroups.com.

Agar Joshua

unread,
Jan 29, 2025, 1:55:14 AMJan 29
to django...@googlegroups.com
This is an interesting implementation. I am curious, what are you trying to achieve that necessitates adding and removing fields? And wouldnt that be solved better with some table relationship instead?

On Tue, Jan 28, 2025 at 1:33 AM Mayank Prajapati <mayankpra...@gmail.com> wrote:
I am making a full stack project with JavaScript and react for front end , Postgre SQL for database and Django for backend and Django rest framework for APIs. So in models.py file there's one field which is to be removed and another field is to be added at the end. This process has to be done once daily at specific time. For example, assume there are five fields in my models i.e. A,B,C,D and E. At some specific time field B will be removed and new field E will be added after D, again same process will repeat next day field C will be removed and new field F will be added after E. I can implement this process through python file handling and "with" method. 

So my question is, should i implement this process in my Django project? Will this process work efficiently in production environment?

--

Mayank Prajapati

unread,
Jan 29, 2025, 5:36:53 AMJan 29
to django...@googlegroups.com

I am making train ticket booking project in which I have to keep record of number of tickets booked and remaining seats for 60 days from today. So as the day passes , passed date field have to be removed and new date after 59 days from today has to be added.


Ryan Nowakowski

unread,
Jan 29, 2025, 2:57:38 PMJan 29
to django...@googlegroups.com

On 1/27/25 7:41 AM, Mayank Prajapati wrote:
> I am making a full stack project with JavaScript and react for front end , Postgre SQL for database and Django for backend and Django rest framework for APIs. So in models.py file there's one field which is to be removed and another field is to be added at the end. This process has to be done once daily at specific time. For example, assume there are five fields in my models i.e. A,B,C,D and E. At some specific time field B will be removed and new field E will be added after D, again same process will repeat next day field C will be removed and new field F will be added after E. I can implement this process through python file handling and "with" method.
>
> So my question is, should i implement this process in my Django project? Will this process work efficiently in production environment?
>

When you say "field" are these FileFields <https://docs.djangoproject.com/en/5.1/ref/models/fields/#filefield>? And when you say "removed" and "added", are you talking about actually removing the field from the model(via migrations <https://docs.djangoproject.com/en/5.1/topics/migrations/>) or setting that field to "None"(null) when you "remove" it?

Alexei Ramotar

unread,
Jan 29, 2025, 3:05:28 PMJan 29
to django...@googlegroups.com

I'd just give the columns generic names and let react handle the names you want to display which is probably based on dates or something cyclical. Otherwise it seems like too much overhead in renaming fields and migration.


--
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...@googlegroups.com.

Johannes Grib

unread,
Jan 30, 2025, 9:47:54 AMJan 30
to django...@googlegroups.com

Hi, When changing the model, you will need to migrate.

Rather update the past_date field with the newdate etc..

 

 

Johannes

Agar Joshua

unread,
Feb 4, 2025, 12:04:02 AMFeb 4
to django...@googlegroups.com
Hi I agree with alexei....@gmail.com renaming fields and doing migrations is definitely not the most optimal solution. I suggest you have generic names. Anything variable mostly ends up being a field on a table or a table, depending on your use case. I hope you figured that out though?

Idohou Sandé Augustin

unread,
Feb 4, 2025, 9:26:02 AMFeb 4
to django...@googlegroups.com

I'm looking for back end developer Django


Van Kamanga

unread,
Feb 4, 2025, 9:26:15 AMFeb 4
to django...@googlegroups.com

Implémenter un processus de modification quotidienne des champs de modèle dans un projet Django peut être complexe, mais c'est faisable. Voici quelques points à considérer pour garantir que le processus fonctionne efficacement dans un environnement de production :

✅Planification des tâches:
Pour automatiser la suppression et l'ajout de champs à une heure précise chaque jour, vous pouvez utiliser un planificateur de tâches comme **Celery** avec Django. Celery vous permet de gérer les tâches périodiques de manière efficace. Vous pouvez également utiliser **Django-cron** pour exécuter des tâches planifiées.

✅Gestion des migrations
Chaque fois que vous modifiez un modèle Django, vous devez créer et appliquer des migrations pour mettre à jour la base de données. Vous pouvez automatiser ce processus en utilisant des scripts qui exécutent les commandes `makemigrations` et `migrate` de Django.

### Exemple de script pour les migrations
Voici un script de ce que j'avais utilisé  dans mon application des migrations :
```python
import os
import django
from django.core.management import call_command
from datetime import datetime

# Configurer Django
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mon_projet.settings')
django.setup()

# Fonction pour mettre à jour les modèles
def update_models():
    # Supprimer le champ B
    call_command('makemigrations', 'mon_app', name='remove_field_b')
    call_command('migrate', 'mon_app')

    # Ajouter le nouveau champ E
    call_command('makemigrations', 'mon_app', name='add_field_e')
    call_command('migrate', 'mon_app')

# Planifier l'exécution quotidienne
if datetime.now().hour == 2:  # Remplacez 2 par l'heure souhaitée
    update_models()
```


Le mar. 4 févr. 2025, 06:03, Agar Joshua <joshua...@gmail.com> a écrit :

Siddhaarrth S Nayyar

unread,
Feb 4, 2025, 9:26:23 AMFeb 4
to django...@googlegroups.com
Mayank 

I think you should not delete and add  the fields rather make them one consistent model so that while reporting or may be during data analytics that will play big role since it’s just date field. 

Otherwise changing the model may need migration which is like adding an extra process 

All the best


Best Regards

Sidhaarrth S Nayyar

R S Infomedia And Films Pvt Ltd. | WZ-79C/6, First floor, Lane no 7A, Main Bharti College Road, Virender Nagar, Janak Puri, New Delhi – 1100 058, India.


Van Kamanga

unread,
Feb 4, 2025, 10:29:02 AMFeb 4
to django...@googlegroups.com

Nilesh Mishra

unread,
Feb 5, 2025, 2:28:20 PMFeb 5
to django...@googlegroups.com
We require expert django developer on contract/hourly basis to lead our team for website development.

Required skill set

Python
Django
Mongodb
React js

Please send your CV to


Regards
Nilesh Mishra 
Whatsapp:- +91-82796-73706

Mark Odoyo

unread,
Feb 7, 2025, 3:52:44 PMFeb 7
to django...@googlegroups.com

Web dev

unread,
Feb 7, 2025, 4:36:10 PMFeb 7
to django...@googlegroups.com
Proposal for Expert Django Developer Engagement

I hope this message finds you well.
I am writing to express my strong interest in the opportunity to lead
your website development project as an expert Django developer on a
contract/hourly basis.
With extensive experience in Django and web development, I am
confident that I can provide the leadership and technical expertise
necessary to ensure the success of your project.

Why Choose Me:

Expertise in Django: With 10 years of experience, I’ve developed
robust web applications using Django

Strong Technical Skills: I’m proficient in Python, JavaScript, and
front-end technologies (HTML, CSS).
I excel in integrating RESTful APIs and have experience with databases
like PostgreSQL and MySQL.

Team Leadership: I’ve led development teams, promoting best practices
and effective collaboration through clear communication and agile
methodologies.

Problem-Solving: I thrive in challenging environments, committed to
finding innovative and efficient solutions that meet both technical
and business needs.

Proposed Engagement:

Availability: I’m available part-time/full-time, specific hours and
can adjust my hours to align with your team’s schedule.

Rates: My hourly rate is30$, reflecting the quality of work I deliver.

Next Steps: I’d love to discuss your project further. Are you
available for a quick call or meeting this week?

Thank you for considering my proposal.
I’m excited about the opportunity to collaborate and contribute to
your project’s success.
Looking forward to your response!
Reply all
Reply to author
Forward
0 new messages