He was cool just behave properly
- Demo of project and overview
- Database related
- ORM, MVC
- Modals
- Relationships
- Css changing
- Boostarp5
- OOPS
Proctor workspace
He was cool just behave properly
Shared viva questions from response sheet: Demo of project; Explain models; Template inheritance
Shared viva questions from response sheet: * Full Demonstration of the web app.; * Advantages of ORM.; * Expain logic behind deleting category.
Shared viva questions from response sheet: Completed in 20 minutes; App demo; are you using ORM
Shared viva questions from response sheet: Nice proctor didn't ask many questions. Demo of the project and just explain the class model template of the project. Version control system, disadvantage of rest API , and few questions from the project
SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleGit version control: commit history dikhao. VCS = Version Control System.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleORM = Object Relational Mapping. Database tables ko Python classes/objects se map karta hai, raw SQL kam likhni padti hai.
Bina ORM: cursor.execute('SELECT * FROM user WHERE id=?', [5])
ORM se: User.query.get(5) ya db.session.get(User, 5)
Example model
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True)FaydePython mein soch sakte ho, SQL injection se protection (parameterized), relationships easy, DB switch thoda aasan.
Nuksaancomplex queries slow/abstract, seekhne ki layer extra, kabhi raw SQL phir bhi chahiye.
MAD1: SQLAlchemy (Flask-SQLAlchemy). Tables db.create_all() ya migrations se banti hain.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleORM = Object Relational Mapping. Database tables ko Python classes/objects se map karta hai, raw SQL kam likhni padti hai.
Bina ORM: cursor.execute('SELECT * FROM user WHERE id=?', [5])
ORM se: User.query.get(5) ya db.session.get(User, 5)
Example model
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True)FaydePython mein soch sakte ho, SQL injection se protection (parameterized), relationships easy, DB switch thoda aasan.
Nuksaancomplex queries slow/abstract, seekhne ki layer extra, kabhi raw SQL phir bhi chahiye.
MAD1: SQLAlchemy (Flask-SQLAlchemy). Tables db.create_all() ya migrations se banti hain.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleORM = Object Relational Mapping. Database tables ko Python classes/objects se map karta hai, raw SQL kam likhni padti hai.
Bina ORM: cursor.execute('SELECT * FROM user WHERE id=?', [5])
ORM se: User.query.get(5) ya db.session.get(User, 5)
Example model
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True)FaydePython mein soch sakte ho, SQL injection se protection (parameterized), relationships easy, DB switch thoda aasan.
Nuksaancomplex queries slow/abstract, seekhne ki layer extra, kabhi raw SQL phir bhi chahiye.
MAD1: SQLAlchemy (Flask-SQLAlchemy). Tables db.create_all() ya migrations se banti hain.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simplemodels.py har table ki class hai — columns, PK/FK, relationships. Yeh Model layer hai.
Viva mein file khol ke bolo:
1) Kaunsi classes/tables hain (User, Role-specific, Booking...)
2) Har table ka kaam 1 line
3) Relationships: 1-1 / 1-M / M-M, backref, cascade, lazy
4) Constraints: unique email, nullable, default status
Example skeleton
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True, nullable=False)
role = db.Column(db.String(20), default='user')
bookings = db.relationship('Booking', backref='user', cascade='all, delete-orphan')ER diagram: rectangles entities, lines relationships, PK/FK mark. Schema = yahi structure.
Tables create: db.create_all() ya migrations. SQLite file SQL viewer se dikha sakte ho.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleRelationships tables ko jodti hain taaki related data object se mil jaaye.
One-to-Many: User → kai Posts. posts = relationship('Post', backref='author'). FK post.user_id.
One-to-One: User → Profile. uselist=False + unique FK. Profile.user_id unique.
Many-to-Many: Student ↔ Drive. Junction/secondary table (student_id, drive_id).
Example 1-1:
class Profile(db.Model):
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), unique=True)
user = db.relationship('User', back_populates='profile', uselist=False)1-M ko 1-1: child FK pe unique=True + uselist=False.
Parent-child: parent PK, child FK. Junction table extra columns bhi rakh sakti hai (applied_on).
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simplebackref relationship ki reverse side automatically bana deta hai.
class Post(db.Model):
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user = db.relationship('User', backref='posts')Ab post.user milta hai, aur user.posts bhi — Post model pe sirf ek line.
secondary Many-to-Many junction table ke liye: relationship(..., secondary=likes_table, backref='liked_by').
Explicit chahiye to back_populates use karo.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleVCS history track karta hai, Git ek distributed VCS hai.
VCS: kaun kab kya change kiya, rollback, branches. Example: Git, SVN.
Git distributed: har developer ke paas poori copy (commits) hoti hai. Central GitHub sirf remote hosting hai, lekin Git ka model distributed hai.
SVN centralized: bina server ke history nahi.
Commands: git status (kya dirty hai), git branch / git checkout -b feature (nayi branch), git rm --cached file (track band, file rahe).
Fayda: collaboration, backup, experiment branches, viva GitHub collaborator check.
Git ke bina bhi files rakh sakte ho, lekin history/merge nahi.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Examiner code pe ungli rakh ke poochta hai — panic mat karo, 4-line formula bolo.
1) Yeh file/line kya role hai (model / route / template / config)?
2) Input kahan se aata hai (form, URL <id>, session, JSON)?
3) DB pe kya query/write?
4) Output kya (render_template / redirect / jsonify)?
Example
@app.route('/book/<int:id>', methods=['POST']) — logged-in user session se, trek id URL se, Booking add, slots--, redirect history.Unknown line: imports (request, url_for, flash), decorators, if checks, commit — har keyword ka reason ready rakho.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Yeh MAD-1 viva question tumhare project ke context se linked hai. Short answer is structure se do:
Pehle 1 line definition/purpose, phir tumhare project ka example, phir chhota code/flow.
Typical Flask flowBrowser request → @app.route controller → SQLAlchemy model/DB → Jinja template response.
Auth: session['user_id'] + role check. CRUD: add/commit, query.all, field update, delete.
Live change maange to: related model → route → template, phir browser refresh karke dikhao.
Example (generic create):
obj = Model(name=request.form.get('name'))
db.session.add(obj); db.session.commit()
return redirect(url_for('list_view'))
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simplemodels.py har table ki class hai — columns, PK/FK, relationships. Yeh Model layer hai.
Viva mein file khol ke bolo:
1) Kaunsi classes/tables hain (User, Role-specific, Booking...)
2) Har table ka kaam 1 line
3) Relationships: 1-1 / 1-M / M-M, backref, cascade, lazy
4) Constraints: unique email, nullable, default status
Example skeleton
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True, nullable=False)
role = db.Column(db.String(20), default='user')
bookings = db.relationship('Booking', backref='user', cascade='all, delete-orphan')ER diagram: rectangles entities, lines relationships, PK/FK mark. Schema = yahi structure.
Tables create: db.create_all() ya migrations. SQLite file SQL viewer se dikha sakte ho.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleJavaScript browser pe chalta hai — click, validation, Chart.js, Bootstrap modal.
Frameworks: Vue, React, Angular. MAD1 mein vanilla JS / Bootstrap JS kaafi.
Modal: popup overlay. Bootstrap: data-bs-toggle='modal' data-bs-target='#id'.
Flash hide: setTimeout se alert remove. Form submit confirm: onsubmit='return confirm(...)'.
Agar project mein JS kam hai to sach bolo, theory example do.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleCSS page ko style karti hai — color, layout, font. HTML structure, CSS look.
h1 { color: navy; } .card { padding: 16px; } #logo { width: 80px; }
Selectors: element (h3), class (.btn), id (#nav), pseudo (:hover).
display:flex — ek line/row mein items, justify-content/align-items se center.
Multiple classes: saari apply, conflict pe specificity/order.
Responsive: media queries / Bootstrap grid. Bina CSS limited (old tables) — practically CSS chahiye.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleBootstrap CSS/JS framework — ready classes se responsive UI.
<button class='btn btn-primary'>Save</button>Red button: btn btn-danger. Navbar, cards, grid (row/col).
CDN: <link href='https://cdn.jsdelivr.net/npm/bootstrap@5...'> — internet na ho to style toot sakti hai. Local copy safer viva ke liye.
CSS vs Bootstrap: Bootstrap faster consistent UI, custom CSS fine-control. Dono saath use ho sakte hain.
aria-current='page' accessibility — current nav item screen readers ko.
CDN fayda: cache, quick setup. Nuksaan: offline, privacy, version lock.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleOOP = objects + classes. Inheritance child parent ke fields/methods reuse karta hai.
class User(db.Model): ...
class Admin(User): ... # model inheritance (joiner ya single table)Models inherit db.Model se taaki query/columns milen.
@staticmethod: self nahi, utility. isinstance(obj, User) type check.MAD1 models classes hain, routes functions — mix of OOP + procedural.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Yeh MAD-1 viva question tumhare project ke context se linked hai. Short answer is structure se do:
Pehle 1 line definition/purpose, phir tumhare project ka example, phir chhota code/flow.
Typical Flask flowBrowser request → @app.route controller → SQLAlchemy model/DB → Jinja template response.
Auth: session['user_id'] + role check. CRUD: add/commit, query.all, field update, delete.
Live change maange to: related model → route → template, phir browser refresh karke dikhao.
Example (generic create):
obj = Model(name=request.form.get('name'))
db.session.add(obj); db.session.commit()
return redirect(url_for('list_view'))
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simplemodels.py har table ki class hai — columns, PK/FK, relationships. Yeh Model layer hai.
Viva mein file khol ke bolo:
1) Kaunsi classes/tables hain (User, Role-specific, Booking...)
2) Har table ka kaam 1 line
3) Relationships: 1-1 / 1-M / M-M, backref, cascade, lazy
4) Constraints: unique email, nullable, default status
Example skeleton
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True, nullable=False)
role = db.Column(db.String(20), default='user')
bookings = db.relationship('Booking', backref='user', cascade='all, delete-orphan')ER diagram: rectangles entities, lines relationships, PK/FK mark. Schema = yahi structure.
Tables create: db.create_all() ya migrations. SQLite file SQL viewer se dikha sakte ho.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simplemodels.py har table ki class hai — columns, PK/FK, relationships. Yeh Model layer hai.
Viva mein file khol ke bolo:
1) Kaunsi classes/tables hain (User, Role-specific, Booking...)
2) Har table ka kaam 1 line
3) Relationships: 1-1 / 1-M / M-M, backref, cascade, lazy
4) Constraints: unique email, nullable, default status
Example skeleton
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True, nullable=False)
role = db.Column(db.String(20), default='user')
bookings = db.relationship('Booking', backref='user', cascade='all, delete-orphan')ER diagram: rectangles entities, lines relationships, PK/FK mark. Schema = yahi structure.
Tables create: db.create_all() ya migrations. SQLite file SQL viewer se dikha sakte ho.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simpleextends poora layout inherit karta hai, include chhota piece insert karta hai.
extends: child page base.html ka structure use karti hai, blocks override karti hai. Ek hi parent.
include: navbar.html / footer.html jahan chaho insert. Kai baar use ho sakta hai.
base.html:
{% block content %}{% endblock %}
home.html:
{% extends 'base.html' %}
{% block content %}<h1>Home</h1>{% endblock %}
{% include 'navbar.html' %} → navbar har page peFayda: header/footer ek jagah, change once — saari pages update. MAD1 mein almost har project use karta hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleSQLAlchemy Python ka sabse popular ORM hai. MAD1 mein Flask-SQLAlchemy wrapper use hota hai.
db = SQLAlchemy(app)
class Book(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(80), nullable=False)
Operations: db.session.add(obj), .commit(), .delete(obj), Model.query.all(), .filter_by(), .get_or_404(id).
db.Model ek class hai (function nahi). db object engine + session + metadata hold karta hai.SQLALCHEMY_TRACK_MODIFICATIONS=False extra signals band karta hai, performance warning hatati hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simpledono SQLAlchemy relationships ko do taraf se connect karte hain, farq sirf likhne ke style ka hai.
backref: relationship ek side pe likhte ho, doosri side SQLAlchemy khud bana deta hai. Short hai, lekin dono models dekh ke relationship clearly nahi dikhti.
back_populates: dono models pe relationship explicitly likhte ho. Code padhne wale ko turant samajh aa jaata hai ki User.posts aur Post.author linked hain.
Example
class User(db.Model):
posts = db.relationship('Post', backref='author')Yahan Post.author automatically mil jaata hai.
Explicit version:
class User(db.Model):
posts = db.relationship('Post', back_populates='author')
class Post(db.Model):
author = db.relationship('User', back_populates='posts')Viva tipexaminer ko bolo — MAD1 project mein back_populates zyada clear hai, isliye preferred.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleVCS history track karta hai, Git ek distributed VCS hai.
VCS: kaun kab kya change kiya, rollback, branches. Example: Git, SVN.
Git distributed: har developer ke paas poori copy (commits) hoti hai. Central GitHub sirf remote hosting hai, lekin Git ka model distributed hai.
SVN centralized: bina server ke history nahi.
Commands: git status (kya dirty hai), git branch / git checkout -b feature (nayi branch), git rm --cached file (track band, file rahe).
Fayda: collaboration, backup, experiment branches, viva GitHub collaborator check.
Git ke bina bhi files rakh sakte ho, lekin history/merge nahi.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
SimpleAPI = Application Programming Interface — do systems predefined rules se baat karti hain. REST API HTTP + JSON use karti hai.
Controller/route HTML bhi return kar sakta hai. REST API generally JSON return karti hai, frontend alag ho (Vue/Postman).
Example
@app.route('/api/users/<int:id>')
def get_user(id):
u = User.query.get_or_404(id)
return jsonify(id=u.id, name=u.name)MAD1 HTML apps mein 'API' kabhi-kabhi routes ko hi keh dete hain. Agar Vue nahi to bolo: server-rendered Flask, JSON APIs optional.
Boolean return: technically jsonify(True) ho sakta hai, lekin meaningful JSON object better. Flask view None return kare to error.
Test: Postman se GET/POST.
Parsing: request.get_json() body se, request.args query se.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Examiner code pe ungli rakh ke poochta hai — panic mat karo, 4-line formula bolo.
1) Yeh file/line kya role hai (model / route / template / config)?
2) Input kahan se aata hai (form, URL <id>, session, JSON)?
3) DB pe kya query/write?
4) Output kya (render_template / redirect / jsonify)?
Example
@app.route('/book/<int:id>', methods=['POST']) — logged-in user session se, trek id URL se, Booking add, slots--, redirect history.Unknown line: imports (request, url_for, flash), decorators, if checks, commit — har keyword ka reason ready rakho.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet
Simpleflash() ek baar dikhne wala message session mein store karta hai — 'Login successful'.
flash('Invalid password', 'danger')
Template
{% with messages = get_flashed_messages(with_categories=True) %}JS se auto-hide bhi kar sakte ho.
SECRET_KEY chahiye kyunki flash session use karta hai.
No replies yet
Open My solution to be the first to share yours.
Not submitted yet