Pin post

Why this Blog?

এই ব্লগে আপনি কিছু সহজ সংক্ষিপ্ত টিউটোরিয়াল বা নির্দেশনা পাবেন । যা আপনার নানা রকম সমাধান দিবে বলে আশাকরি আমাদের প্রোগ্রামিং সংশ্লিষ্ট ব্লক...

৩১.১২.১৮

জ্যাঙ্গো ব্লগ এ্যাপ তৈরী

|| This post is for Django version 3, New post will coming with Django Version 4. ||

আমরা পূর্বের পোষ্টে আমাদের জ্যাঙ্গো প্রজেক্ট খুলেছি এবার প্রজেক্টের আওতায় একটি ব্লগ এ্যাপ খুলবো।
[বিঃ দ্রঃ আমাদের সকল কমান্ড কিন্তু CMD or PowerShell এই করতে হবে, এবং অবশ্যই যে ডিরেক্টরিতে প্রজেক্ট সেই ডিরেক্টরিতেই করতে হবে। ]তাই আমি আমার F ড্রাইভের ভেতরের mysite এ প্রবেশ করবো, প্রবেশ করতে cd mysite লিখে ইন্টার দেবো।[আপনার ডিরেক্টরিতে কি কি আছে দেখতে ls লিখে ইন্টার দিলে সব কিছুর লিষ্ট দেখতে পারবেন।]

 ব্লগ  এ্যাপ খুলতে আমি আমার cd mysite লিখে ঢুকলাম


এবং 
py manage.py startapp blog লিখে ইন্টার দিলাম।

এতে আমার মাইসাইট ফোল্ডারে একটি blog নামে একটি ফোল্ডার তৈরী হয়েছে, আপনি ls কমান্ড দিয়ে চেক করুন।(চিত্রঃ Django Command 1)
Django Command 1

আপনার ব্লগ এ্যাপ তৈরী হয়ে গিয়েছে।
এবার

এখন দেখুন  আমাদের ডিরেক্টরিতে blog নামে একটি নতুন ডিরেক্টরি তৈরি হয়েছে।
আমরা যেহেতু একটি নতুন এপ তৈরি করেছি,
 আমাদের প্রজেক্ট কে কোড এডিটর বা আইডিতে ওপেন করতে হবে।

[বর্তমানে আমি vscode দিয়ে কাজ করি || May-2023]
 প্রজেক্টের সেটিং ফাইলটি  mysite/settings.py  খুলুন।
এখানে INSTALLED_APPS  নামে একটি লিস্ট আছে, লিস্টের শেষে  ‘blog’ যোগ করুন।
1
2
3
4
5
6
7
8
9
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
' blog',
]


এবার আমরা urls.py ফাইলটি ওপেন করবো এবং সেখানে import এ include লিখে ইনক্লুডের কথা বলবো, এবং নিচে পাথে ব্লগের লিংকটি বলে দেবো।
যা চিন্হিত করবে আমাদের প্রেজেক্টে একটি ব্লগ এ্যাপ আছে...
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),    path('blog/', include('blog.urls')),]

[বিঃদ্রঃ না বুঝার কিছুই নেই, urls.py হচ্ছে নেভিগেশন লিংকের লিষ্ট, আর path মানে হলো হাইপার লিংঙ্ক, যা HTML এ এংকর লিংক]

২। কাজ সহজ করতে প্রতিটা এ্যাপের আন্ডারে একটা urls.py ফাইল খুলে সেখানে এ্যাপের(যেমন ব্লগের নেভিগেশন লিংক) বা path গুলো লিখলে হয়।

এবার আমাদের ব্লগ এ্যাপের ভেতরকার পথ(path বা urls) তৈরী করবো...
তাই ব্লগের ভেতর urls.py নামে একটা ফাইল খুলবো।

এখানে দ্বিধায় থাকতে পারেন, তাই মনেরাখবেন..
১। আপনার project এর একটা urls.py থাকবে, যেখানে প্রজেক্টের আন্ডারের সকল এ্যাপের url/path দিয়ে প্রজেক্টের সাথে এ্যাপগুলো কানেক্ট করতে হয়।




এবার উইআরএলস কে বলে দেবো django থেকে urls এর পাথ কে ইমপোর্ট করতে...
এবং ( ইউআরএল যেহেতু ব্লগের আন্ডারের )
তারপর পাথ প্যাটার্নে লিখে দিবো views এর ভেতর একটা index ফাংশন আছে তা আমার ইনডেক্স বা হোম পেইজ ফাইল ...
from django.urls import path

from . import views

urlpatterns = [
    path('', views.index, name='index'),]


এবার আমরা views.py ফাইল এডিট করবো আমাদের ইনডেক্স ফাইলে লেখা প্রকাশ করতে
from django.http import HttpResponse
# Create your views here.def index(request):
 return HttpResponse("<h1>This is My Blog Home page</h1>")

এবার আপনার রান সার্ভার ফাইলটি ক্লজ করে আবার ডাবল ক্লিক দিয়ে ওপেন করুন
এরপর 127.0.0.1 এ গিয়ে দেখুন

  1. admin/
  1. blog/ 
অভিনন্দন, আপনি পেরেছেন  :)

 এখানে দুইটি ইউআরেল তৈরী হয়েছে, সুতরাং আপনি http://127.0.0.1:8000 এর পর /blog লিখে প্রবেশ করুন বাহ আপনার ভিউ তে দেখাচ্ছে This is my Blog Home Page 
[এখনো http://127.0.0.1:8000/admin এর কাজ করা হয়নি, যদিও জ্যাঙ্গ নিজেই একটা এডমিন প্যানেল দিয়ে দিয়েছে।  ]

[রান সার্ভার CMD কে ক্লজ করে আবার ওপেন করুন, তারপর পেইজ রিফ্রেশ করুন।]


নেক্সট পোষ্টগুলোতে আমরা দেখব কিভাবে আমাদের ব্লগ পোষ্ট করবো, এবং তার জন্য কিভাবে পোষ্টের কাঠামো বা মডেল তৈরি করা হয়। এরপর দেখবো কিভাবে জ্যাঙ্গোর নিজস্ব এডমিন প্যানেলে এডমিন ইউজার নেম ও পাসওয়ার্ড তৈরী করে এডমিন প্যানেল কাজে লাগাতে হয়।







জ্যাঙ্গো প্রজেক্ট ১ (ব্লগ তৈরী করা) [এখান থেকে প্রজেক্ট শুরু করুন ]

|| This post is for Django version 3, New post will coming with Django Version 4. ||

জ্যাঙ্গোতে প্রজেক্ট করা শিখতে স্টেপ বাই স্টেপ আমরা একটি ব্লগ তৈরী করবো।


আপনার পাইথন ও জ্যাঙ্গো ইনস্টল থাকলে আপনি এবার প্রজেক্ট শুরু করতে পারেন।

প্রজেক্ট শুরু করতে আপনি যে ড্রাইভে প্রজেক্টটি করবেন সেই ড্রাইভে প্রবেশ করতে কমান্ড দিন।
যেমন আমি F ড্রাইভে প্রজেক্টটি রাখবো। তাই F: দিয়ে ঐ ড্রাইভে প্রবেশ করলাম। (চিত্রের প্রথম লাইন)
তারপর প্রজেক্ট তৈরী করবো, ধরুন mysite নামে প্রজেক্ট করবো।
এই মাই সাইট প্রজেক্টের আওতায় অনেক কিছুই থাকতে পারে, Blog, E-commerce, Music store, Movie site সহ অনেক এ্যাপ।

সুতরাং আমি mysite প্রজেক্ট শুরু করবো।

1
django-admin startproject mysite

 লিখে ইন্টার দিলে চিত্রের মত কিছুই দেখাবে না।
কিন্তু আপনার প্রজেক্ট তৈরী। আপনি আপনার সিলেক্টেড ড্রাই ভে গিয়ে দেখুন মাইসাইট নামে একটি ফোল্ডার ক্রিয়েট হয়েছে এবং ঐ ফোল্ডারের ভেতর mysite ফোল্ডার manage.py ফাইল এবং db.sqlite3 নামক ডাটাবেজ ফাইল তৈরী হয়েছে।
এবার আপনি ‍আপনার mysite ফোল্ডারে প্রবেশ করুন  cd mysite লিখে ইন্টার দিন।
{ ls লিখে ইন্টার দিলে আপনার ফোল্ডারে কি কি ফাইলে আছে তা দেখাবে।}
এখন দেখবো আসলেই কি মাই সাইট তৈরী হয়েছে নাকি...
তাই  python manage.py runserver লিখে ইন্টার দিন।









সেখান হতে কপি করে অথবা নিজেই ব্রাউজারে লিখুন  http://127.0.0.1:8000/
এবং দেখুন এভাবে অভিনন্দন জানাচ্ছে।

অভিনন্দন গ্রহন করুন এবং আপনি সফলতার সাথে এগিয়ে চলেছেন।
এরপর আমরা আমাদের প্রজেক্টের আরেক ধাপ এগিয়ে নেক্সট পোষ্টে দেখবো কিভাবে প্রজেক্টের ব্লগ এ্যাপ তৈরী করে।



ব্রাউজারে সাইট দেখতে প্রতিবার কোডিংশেষে সার্ভার রান করতে হবে।
তাই বারবার সার্ভার রান করার ঝামেলা থেকে বাঁচতে।
 আপনি mysite ফোল্ডারে নিজে আরেকটি runserver.bat ফাইল তৈরী করুন,
ফাইলটি কিভাবে তৈরী করবেনঃ প্রথমে রাইট বাটন থেকে যেভাবে নিউ ফোল্ডার তৈরী করেন সেভাবেই  টেক্সট ডকুমেন্ট নিন এবং .txt সহ কেটে দিন এবং লিখুন runserver.bat এবং রি-নেইম করুন। [ওয়ার্নিং দেবে ইয়েস দিয়ে কনফার্ম করুন]
এবার  runserver.bat ফাইলটি সিলেক্ট করে রাইট বাটন হতে এডিটে যান,
তারপর সেখানে লিখুন python manage.py runserver
এবার সেইভ করুন।

এবার রানসার্ভার ওপেন করুন... দেখুন সার্ভার ওপেন হয়েছে,
















পাইথন ও জ্যাঙ্গো ইন্সটল করা

[Update 2023]

Virtual environment ইনস্টল নিয়ে এই পোষ্টটি দেখুন...

|| This post is for Django version 3, New post will coming with Django Version 4. ||
জ্যাঙ্গো ইন্সটল করতে প্রথমে CMD অথবা Powershell ওপেন করুন। [ CMD অথবা Powershell লিখে স্টার্টম্যানুতে সার্চ করলেই পাবেন।]

আগে নিশ্চিত হোন পাইথন ইন্সটল আছে কিনা...
পাইথন ভার্সন চেক করতে  CMD অথবা Powershell এ py --version লিখে ইন্টারদিন
তখন এরকম ভাবে python 3.7.1 (যে version) আছে দেখাবে। ############ তারপর নিচের কোড টি দিয়ে জ্যাঙ্গো ইন্সটল করে নিন।
 pip install -e django 

 আর আপনার যদি আগের জ্যাঙ্গো ইন্সটল থাকে তাহলে version আপগ্রেড করতে python -m pip install --upgrade pip  লিখে ইন্টার দিন।
##############
ব্লগটি অনেকদিন ধরে আপডেট করা হয়  নাই।
বর্তমানে জ্যাঙ্গো Virtual environment এ ইনস্টল করে কাজ করা হয়।
এতে প্যাকেজের ভার্সন নিয়ে ঝামেলা হয় ন।

Virtual environment ইনস্টল নিয়ে এই পোষ্টটি দেখুন...

এই পোষ্টটা দেখে তেমন কিছু না বুঝলেও জ্যাঙ্গো প্রজেক্ট-১ ব্লগ তৈরী করা পোষ্টটি পড়ার সময় আপনার ঐ পোষ্টে যেতে হতে পারে। কারন Virtual environment ইনস্টল নিয়ে এই পোষ্টটি ভার্সন অনুযায়ী আপডেট হলেও, ব্লগের অন্য পোষ্ট সমূহ আপডেট করা হবে না।
 



















Why this Blog?

এই ব্লগে আপনি কিছু সহজ সংক্ষিপ্ত টিউটোরিয়াল বা নির্দেশনা পাবেন । যা আপনার নানা রকম সমাধান দিবে বলে আশাকরি

আমাদের প্রোগ্রামিং সংশ্লিষ্ট ব্লকের নির্দেশনা চললে আপনি সহজেই একজন প্রোগ্রামার ও ওয়েব এ্যাপ ডেভলপার হতে পারবেন। প্রোগ্রামিং বা ফ্রেমওয়ার্কের বিস্তারিত জানার জন্য আপনি ওয়েবে অনেক সোর্স পাবেন, কিন্তু মূল কথা সংক্ষেপে খুব কম স্থানে পাবেন। আর বাংলায় সোর্সতো খুবই নগন্য। তাই আমাদের এই চেষ্টা, এই ব্লগে আপনাকে বাংলায় সহজ সরল ভাষায় বুঝানোর চেষ্টা করবো।
[অবশ্যই কমেন্টসে আপনার পরামর্শ প্রদান করে ধন্য করবেন।]

বিঃদ্রঃ আমি কোন প্রফেশনাল নই, আমি নিজে শিখছি মাত্র। আর ভালো শিখার একটা মাধ্যম হিসেবে অন্যকেও সাহায্য করা একটু সুন্দর কৌশল হিসেবে মনে করি। অন্যকে শিখতে এবং নিজেও ভালো শিখতে শেয়ার করার বিকল্প নেই বলে আমিও মনে করি।
***টাইপ মিস্টেক /বানান ভুল গুলো অবগত করবেন এবং মার্জনা করবেন

পাইথন প্রোগ্রামিং

পাইথন ইন্সটল করা এবং ইন্ট্রারপ্রেটার ব্যবহার করে কোডিং করাঃ

১। আপনি python.org ওয়েব থেকে ডাউনলোড করে ইন্সটল করে নিন।
২। এবার আপনার স্টার্ট ম্যানুর পাইথন ফোল্ডার থেকে IDLE নামক ফাইল ওপেন করে কোডিং শুরু করুন।

যেমন, আপনি প্রথমে প্রিন্ট করা শিখুুন, Bangladesh প্রিন্ট করতে print("Bangladesh") লিখে ইন্টার দিন। দেখুন Bangladesh লিখা প্রিন্ট হয়েছে।

আপনাকে প্রোগ্রামিং শিখতে বেসিক কিছু স্টেপ শিখতেই হবে।

# প্রিন্ট/ আউটপুট প্রকাশ করা
# কিবোর্ড হতে ইনপুট নেয়া
# যোগ বিয়োগ গুন ভাগ করা।
# লুপ,সুইচ-কেস, নেষ্টড কি  এবং কিভাবে কাজ করে
# অ্যারে, স্ট্রিং কি এবং কাজ
# ডাটা টাইপ
# ফাংশন ও মডিউল


সহজ ভাষায় স্টেপ বাই স্টেপ  পাইথন প্রোগ্রামিং শিখতে ফ্রি গিটবুকের এই সাইটটি ফলো করতে পারেনঃ  https://python.howtocode.com.bd

অথবা আপনি পাইথনের অফিসিয়াল সাইটের থেকেও শিখতে পারেন এই লিংকের থেকেঃ https://docs.python.org/3.6/tutorial/index.html#the-python-tutorial





তাছাড়া আপনি ভিডিও টিউটরিয়ালের জন্য  ইউটিউবে অনেক সুন্দর সুন্দর টিউটরিয়াল পাবে।[অনেক ভিডিও টিউটরিয়ালের ভেতর হতে না দেখে দু একটা বাছাই করা সম্ভব নয়]

জ্যাঙ্গো আবিষ্কারের ইতিহাস

জ্যাঙ্গো হচ্ছে পাইথন দ্বারা নির্মিত একটি মুক্ত প্রযুক্তির( Free and open source) ওয়েব এপলিকেশন ফ্রেমওয়ার্ক । এটি আবিষ্কৃত হয়েছিল ২০০৩ সালে Lawrence Journal-World পত্রিকার Application Developer দের হাত ধরে। পত্রিকার সংক্ষিপ্ত ডেডলাইনকে সামনে রেখে ডেভেলপারদের চাহিদা পূরন করতেই Django আবিষ্কার।
Django এর সহযোগী আবিষ্কারক Simon Wilson বলেন, “জ্যাঙ্গো আবিষ্কার করা হয় যখন তিনি 
 ২০০৩ সালে Adrian Holovaty ‘Lawrence Journal-World newspaper’ এ কাজ করতেন”।
 Adrian Holovaty 
এবং Simon ইতমধ্যে Lawrance.com তৈরী করেছিলেন PHP দিয়ে,   ও Adrian Holovaty ৫ বছরের অভিজ্ঞতা সম্পন্য PHP ডেভেলপার ছিলেন। তিনি বলেন, ” PHP দিয়ে বড় সাইট মেইন্টেইন করতে গিয়ে আমরা উভয়েই বিরক্ত ছিলাম, আমরা উভয়ের পাইথনের ভক্ত ছিলাম এবং ধন্যবাদ Mark Pilgrim কে তার Dive Into Python বইটির জন্য” ।

জ্যাঙ্গো ব্যাবহার করে নির্মিত সাইটঃ