Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα,

Εντελώς καινούριος στο web development, αποφάσισα να ξεκινήσω με django και μετά απ' το σχετικό research ήρθε η ώρα να ξεκινήσω το χτίσιμο της πρώτης μου εφαρμογής/σελίδας.

Αφού τρέξω τις 3 «αρχικές» εντολές:

django-admin startproject newsite 
./manage.py runserver 
./manage.py startapp newapp

Καταλήγω με το παρακάτω structure:

 

 

ilias@archpc ~  ➜ tree newsite
newsite
├── db.sqlite3
├── manage.py
├── newapp
│   ├── admin.py
│   ├── __init__.py
│   ├── migrations
│   │   └── __init__.py
│   ├── models.py
│   ├── tests.py
│   └── views.py
└── newsite
    ├── __init__.py
    ├── __pycache__
    │   ├── __init__.cpython-34.pyc
    │   └── settings.cpython-34.pyc
    ├── settings.py
    ├── urls.py
    └── wsgi.py

4 directories, 14 files

 

 


Προφανώς developing και revision control πάνε μαζί, οπότε η απορία μου είναι τι ακριβώς θα πρέπει να κάνω track με το git ώστε να το ανεβάζω public; Όλη τη δομή ως έχει ή μόνο τις επιμέρους εφαρμογές; Η εφαρμογή που θα φτιάξω σκοπεύω να είναι open source.

Επίσης ποια αρχεία θα χρειαστεί να «προστατέψω» και πως;

Ευχαριστώ.


 

Δημοσ.

Φτιάξε μια virtualenv πρώτα να δουλεύεις με το σωστο pythonic τρόπο και βάλε στο .gitignore μονο *.pyc εφόσον είναι open source και βάζεις όλα τα άλλα να γίνονται track. Δε ξέρω κατα πόσο η βάση είναι σωστό να ανέβει, αν κρίνω απο ένα άλλο post που έκανες μαλλον πρέπει να πας σε postgres ή mysql.

Τώρα για το τι πρέπει να προστατέψεις:

Εφόσον το ανεβάσεις live θα πρέπει να αλλάξεις το key στα settings και τους κωδικούς της βάσης οπότε το settings.py ειναι ένας υποψήφιος αλλά για να διευκολύνεις το development καλύτερα ανέβασε το. Έτσι κι αλλίως live θα στήσεις apache και όχι το development server του django οπότε τις αλλάγες στο settings.py δε τις γλυτώνεις.

Δημοσ.

Τελικά το έψαξα περισσότερο και το σωστό μοντέλο είναι να αναπτύσσεις ξεχωριστά τις apps για reusability (με setup.py κτλ.).

Απλά επειδή είναι πιο άνετο να διατηρώ ένα repo αντί για δύο, προτίμησα να προσθέσω ολόκληρη τη δομή στο git. Φαντάζομαι πριν το deploy θα αρκεί να αλλάξω το key και τις ρυθμίσεις της βάσης.

Έχω και το σχετικό .gitignore στο οποίο αγνοώ και τη βάση και τα migrations. Οπότε είναι πιο βολικό γιατί μετά από ένα git clone, αρκεί να κάνω τα migrations της βάσης και να τρέξω το population script που έγραψα και μπορώ να δουλέψω κατευθείαν.

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...