label="File input"
Label ba in ast
label="File input"
Label ba in ast
title="Title" text="Lorem ipsum dolor sit amet consectetur adipisicing elit. Commodi, ratione debitis quis est labore voluptatibus! Eaque cupiditate minima" >
در ساده ترین روشش این است که فقط حاوی title و text باشد
<v-expansion-panels>
دقت داشته باش که با استفاده از این panels می تونی چنتا panel داشته باشی
label
با استفاده از این label می تونیم برای این checkbox بیای و label تعیین کنی
<b-table striped hover :items="items"></b-table>
اگر همه چیت اوکی باشه با گذاشتن یه List از object های JSON خودش میره Header و Data را برات می شونه. * هر Object را داخل یک Row از جدول میزاره. * میاد اون Key های Objcet را به عنوان Header ور میداره.(خود به خود kebab-case را ور میداره و به snake-case و Camel Case تبیل می کند.
Theme
تکلیف theme که مشخص است
thead>, <tbody>, <tr>, and <td>
این ها مثل Table در این جا هم هستند.
v-for="
با v-for این را تعیین می کنه که چند سطر تو می خوای
v-list-item
جالبه ما یه چیزی به نام v-list-item داریم که item های این List را تعیین می کنه.
ingle-line
تو سه حالت ما اینا داریم که این سه حالت شامل: Single Line Two Line Three Line
Persistent
ایا یا Esc بره یا نره
Transitions
می تونی نوع Transition را هم تعیین کنی
v-model
با v-model هم مثل اینکه میشه
activator
این برای فعال کردن Dialog به درد می خوره. هم اسم activator برای template و هم v-bind در v-btn باید مثل هم باشند.
v-dialog
این نزدیک ترین چیز به Modal در Bootstrap است.
max-height
با max-height و max-width می تونی حداکثر ارتفاع و عرض را تعیین کنی
:width
با این Width می تونی عرض تصویر را تعیین کنی. با aspect-ratio می تونی نسبت تصویر را تعیین کنی
he vuetify-loader
با این می تونی Dynamic Progressive را بیاری
basicConfig
هم بهش میگه خروجی را کجا بریزه و هم براش یه Level تعیین کرد. طبیعتا اگر Level در حد Critical باشه، دیگه نمیره سراغ Info.
format
چقد قشنگ Format را تعریف کرده
basicConfig
هم بهش میگه خروجی را کجا بریزه و هم براش یه Level تعیین کرد.
Debug
Debug Level: اطلاعات Debugger مثل همون System.log ها است
confirmation message
Level Info: این برای نشون دادن FLow برنامه و یه جورایی برای Confirmation Messages است
v-text-field
توصیه می کنم که اول V-text-filed را بخون و ازش چیز یاد بگیر
Previously known as tags
با این tags می تونی multiple combobox داشته باشی
Density
این Density را واقعا نفهمیدم
:items
با items می تونی یه لیست براش تعیین کنی
label="
با Label می تونی براش Label تعیین کنی
list
سه تا حالت محتلف داره که: Default Outline: Outline border Underlined: Underline bellow
Slots
اینجا Slot ها را نشونت میده که خب اول اون قسمت اول که Anatomy بود را بخون
Usage
نگران نباش چون Value ها را می تونی با v-model پیش ببری.
Validation & rules
برای بحث Validation و Rule ها میان از این استفاده می کنن. برای بحث های Validation مثال های پایینش کامل تر نشون میده
Variant
این Variant های مختلفش را نشون میده
Prefixes and suffixes
پشمام جدییییی می تونی Prefix و Suffix بذاری
Icons
می تونی حتی Icon بذاری
Disabled and readonly
می تونی به راحتی Disable و Readonly کنی
Examples
تازه Examples هاش اومد
Clearable
منظورمون همون دکمه ای هست که برای پاک کردن Text Filed به درد می خوره.
If you
برای بحث Hint این که کی ظاهر بشه و کی پنهان بشه
Hints & messages
دقت داشته باش که Hint منظورمون همون متنی که زیر text-filed ظاهر میشه.
Placeholders
برای بحث Placeholders ها به درد می خوره
Anatomy
چقد خوب داره Anatoy را نشون میده
Labeling
برای بحث Labeling به کار میره
By def
برای Align کردنش به کار میره
Optiona
می تونی اندازه Pagination را مشخص کنی
Go
با این Prop می تونی بری اول یا اخر
Scoped v
فعلا نمی دونم اینا چین
Lim
برای محدود کردن کاربر که من فعلا استفاده نمی کنم
v-model
با این v-model می تونی مقدار صفحه جاری را نشون بدی. با این total-rows باید تعداد کل ردیف ها را بهش بدی با این per_page که تکلیف مشخص است.
SQLAlchemy
این SQLAlchamy من این یه تیکشا نفهمیدم
pip install sqlalchemy
نحوه نصبش در pip را داره میگه
(ORM)
این ORM هم داره که یعنی تو بیای Class به Database را map کنی و اینجوری Maintain کد را رحت تر کنی. یه چیز دیگه تبدیل Datatype های SQL که اغلب به صورت Integer و Float است به DataType های Python که اغلب به صورت Non Scaler است
pd.read_csv
با پانداس میاد میخونه
df.head()
خیلی راحت head می خونه.
features (X)
این Feature در واقع همون صفت ها یا مقادیری که ما باهاشون میخوایم آموزش را یاد بدهیم. مثلا در همین مسئله شبکه ما این که IP و port و اینا چی باشه را بهش میگن Feature. در الگوریتم های نظارت شده این مقایدیری که حاصل کار است را میگن Label. مسئلن در مسئله خودمون این که نتیجه این ترافیک چیه را بهش میگن Label.
X= df['Head Size(cm^3)']y=df['Brain Weight(grams)']
معرفی کرد Feature و Label خودشا
A de
ما یه چیز دیگه هم داریم به نام @before_request که اونم خیلی جالبه
Modern web
این Routing در واقع برای map کردن یک HTTP Request به یک Function است. مثل اینکه این Routing میتونن به انواع و اقسام HTTP Requst جواب بدن مثل GET و POST و غیره. در واقع در نهایت یک Routing Table درست میشه که هر URL به یک تیکه کدی وصل می کنه و به این Routing Table یا Routing Engine کفته می شود.(یاد مفهوم Routing Table در لایه 3 یا network افتادم)
برای status code می تونی بعد اون return سااده بنویسی 200 return "Would you like some tea?", 200
o con
حالا می خواد بره با Axios وصلش کنه
e
حالا رفت سراغ Vue
requests
در واقع تعیین می کنه که درخواست ها از چه پروتکلی، با چه IP یا Domain Name و رو چه Port می تونی جواب بدی. خیلی خووبه براش تعیین کنی تو فقط باید از این IP و Port که در Front تعیین کردی استفاده کنی
Flask-CORS
تازه رفت سراغ Flask-origin چقد جاالب.
pyth
اول یه Virtual Environment می سازه
)
یه سری چیز دیگه هم هست use_reloader انگار پس از هر تغییری خودش restart می کنه threaded یعنی هر request را به یک thread بسپاری
.
ما یه سری چیز جالب دیگه هم داریم که اینجا نیورده request.json request.data
Cookies
اینا تو درس Cookie توضیح می دهم
method
از همین استفاده می کرد که بتونه بفهمه الان با Method به نام Request یا Response
Form
این داخلش اطلاعاتی که به وسیله POST و در داخل Form در سمت View درست شده است را میفرستن تو این Object که انگار یک Dictionary هم هست. خیلی بهتر در این سایت برات نوشتم. https://www.digitalocean.com/community/tutorials/processing-incoming-request-data-in-flask
args
برای گرفتن اطلاعات Query String، باید بری سراغ args که خب من تو این سایت دیدم بهتر نوشته است. https://www.digitalocean.com/community/tutorials/processing-incoming-request-data-in-flask
abort(401)
اینم اولین باره من دارم می بینم. مثل اینکه قدیمیه ولی کسی دیگه از این استفاده نمی کنه
url_for
من تا الان همچین تابعی ندیده بودم. فقط اسم اون url را میده. build a URL dynamically بعضی وقتا می خوای بر اساس ورودی کاربر به url های مختلفی اون را بفرستی که برای این کار از url_for استفاده می کنند. هر چی پارامتر بعد بهش بدی میشه در واقع همون پارامترهای اون تابع: url_for('cricket',favteam = team) مثالش اینجاس: https://www.geeksforgeeks.org/flask-url-helper-function-flask-url_for/
redirect()
که خب برای وقتایی هست که تو میخوای در یک تابعی هستی و درخواست را بفرستی برای یک تابع دیگه کخ اون Handle کنه. مثلا وقتی User و Pass نداره بره تو صفحه Signup. سه تا پارامتر میگیره شامل location که آدرسی که میخواد نتیجه بره و statuscode که خب طبیعتا 302 است و response نفهمیدم.
Lik
نخوندم
return resp
همیشه برای Return شدن میومدیم از render_template استفاده می کردیم ولی ایندفعه کار باحالی کرده و با make_response این کار را کرده. چه جالب اینجوری Set می کنه. دقت داشته باش که با این make response میشه خیلی کارا کرد از جمله Set کردن Status Code برای Response و mimetype و headers.
request.cookies.get
اینم نحوه get کردن که مثل همیشه از طریق request این کار را می کنه
Read
برای Set شدن باید از سمت Server بیاد و برای Get شدن باید از سمت Client بیاد. برای Get کردنم که همون طور که میدونی خود مرورگر Client برات تو همون درخوسات های Get برات این Cookie را هم میفرسته
In Flask
برای Set شدن باید از سمت Server بیاد و برای Get شدن باید از سمت Client بیاد. همون جور که میدونی برای برای درست کردن response ا دستوری به نام make_response() استفده می کنیم . تو این دستور از تابعی به نام set_cookie استفاده می کنیم که میره برات یک Cookie را ذخیره می کنه.
client’s computer
اقا این Cookie همون جور که می دونی به عنوان بخشی از پروتکل http کار می کند و برای ذخیره کردن اطلاعات کاربر به کار می رود. من تو Onenote برات نوشتم. برای دسترسی به Cookie ها، داخل Request Object می تونی با attr به نام cookie بهش دسترسی داشته باشی. یک سری Extra Date داره.
ven belo
اقا دقت کن که من form در یک جلسه قبل گفتم حالا اومده تو صفحه student.html یک فرم گذاشته که تو فرمش گفته بفرس به result (البته من تو digital occean خوندم که باید بفرسته به همون جایی که ازش form را گرفته و این برام عحیبه) به هر حال در result گفته با post بگیر و اطلاعات را از طریق request.form بگیر و حالا با صفحه result اون اطلاعات را به کاربر نشون بده. خیلی ساده و قشنگ
If the JSON o
نکته خیلی مهمی که میگه اینه که حتما باید Value ها حاوی کلید باشند مگرنه به مشکل میخوره
request.get_json()
چه تابع جالبی که میاد اطلاعات JSON را به Python تبدیل می کند
s:
قوانین تبدیل JSON به Python dict: اولا اگر در Json حالت Key و Value داشته باشد، در پایتون به صورت Dictionary است. دوما آرایه در Json به List در پایتون تبدیل می شود. سوما Value هایی که داخل " " باشد به Sting در پایتون تبدیل می شود. چهارما باحاله نگاه کن :) پنجما اعدادی که " " نداشته باشد به اعداد تبدیل می شود.
In P
هر وقت اسم JSON پیش می اید نام POSTMAN می درخشد
Usin
حالا رفت سراغ Json چون خیلی بهتر از Query String و Form Data براد اطلاعات را میفرسته. برای اطلاعات پیچیده تر بهتر است.
Inside
شاهکارش برای Handle کردن FORM. خیلی خووبه یاد بیگیر
The most important thing to know about this form is that it performs a POST request to the same route that generated the form.
این فرم POST Request را میفرسته به همون URL که این Form را Generate کرده. دقتم داشته باش که این فیلد ها را بعدا میشه در Object به نام Form گرفت و اسمشم همونایی که در Attribute به نام name گذاشتیم که اینجا language و Framework است
To de
جالبه برای درست کردن Form اومده هر دو تابع GET و POST را گذاشته و اینجوری تو موقع Get که فرم را میفرسته
Form data
از اینجا در مورد object به نام Form توزیح می دهد که اطلاعاتی که تو اطلاعاتی که در From و در تابع POST میفرستی میاد در Object به نام Form
reques
دو جورمیاد اون Query String را میگیره request.args.get request.args حس می کنم که این args یک Array است دقت داشته باش که language یک کلید است و با این دستور میاد محتوا را میگیره. در صورتی request.args.get که حتی اگر language هم خالی باشه بازم مشکلی در اجرای برنامه پیش نمیاد، البته اگه برنامه تو اینا Handle کنه و مقدار خروجی اش برابر None است. در صورتی که request.args بخوای بری اگر نداشته باشه بهت خطای 400 میده.
A query string
اینجا داره query string هاشا درست میکنه
This tutoria
اینجا که برات پیش نیازها را نوشته
static file su
اینجا تو بحث Static فایل ها است که مثل JS و CSS است. میگه به صورت عمومی این کار Web Server است ولی در موقع Develope باید این فایل ها را در پوشه Static بذاریم.
A special endpoint ‘static’ is used to generate URL for static files.
خیلی جالبه میگه فقط با گفتن کلید واژه static خودش برات URL دسترسی به این پوشه را درست می کنه. الان تو مثالشم ببینی میاد با یه url_for() و یک کلید واژه static و اسم فایل، اون فایل را برات Serve می کنه
The jinja
اینا برای کار با Jinja است من دیگه خیلی وارد این قسمت نمیشم
‘web templating system’
ایم مفهوم Web Templating System خیلی مهمه میگه یعنی طراحی یک فایل HTML که بشه Variable Data ها را داخلش Insert کرد. میگه این سیستم شامل یک Engine که برات خروجی HTML را Render می کند و یک Data Source و همچنین یک template processor است.
render_template
این render_template که بذاری یعنی برو از Template Engine بخون . با این تابع میگی برو از تو پوشه TEMPLATE و فایل hello را بخون
ro
ببین من خیلی با اینجاش دیگه موافق نیستم چون تو Return به جای یک عبارت ساده، میاد یه HTML می نویسه و این هر جوری حساب کنی تخمیه و ما نباید اینجوری بریمو باید Json پس بده. این روش کلا اشتباس
args
جالبه این args من نمیدونم کجاها به درد میخوره
request
اول همه باید خیلی خوووب دید داشته باشی نسبت به Request و Response در موقع درخواست POST. این جا از یک ابجکت جدید رونمایی کرد به نام request و در موقع پست توی request اطلاعات ارسالی است(دقت داشته باش که توی body اون اطالاعات ارسالی است) و تو Response حالا 200 می تونه باشه(مجیدی دوباره اطلاعات ارسالی را پس میفرستاد)
The following tabl
متدهای اصلی HTTP را داره میگه
dynamically building a URL
با این تابع که بهش میگن url_for میشه یک تابع دیگه را اجرا کنی. توی اولین ارگومانش اسم تابعی که باید Redirect بشه را میدی و توی آزگومان های بعدی در واقع باید همون Variable Rule یا Variable Name ها را بدی
variable parts
بخ این که میان یه URL را به تابع وصل می کنند میگن Rule یا URL RULES(مثل همین چیزهایی که در iptables است) به این کاری که ما داریم اینجا انجام میدیم میگن Variable Rule به اون که داخل پرانتزه میگن Parameter به اون چیزی که داخل < > است نیگن Variable Name * نکته مهم این است که باید حواست باشه که اسم Variable Name با اسم اونی که تو تابع میده یکی است
python or /python/
به صورت پیش فرض هم /python و هم /python/ یکی است ولی جالبه برای Flask اینجوری نیس که این قواعد از Wekzeug میاد
n add
به صورت پیش فرض این Variable Rule به صورت رشته است. ولی میشه Integer یا FLoat هم باشد که نمونه هاش را میبینی
The add_url_rule() fu
البته میگه یه جور دیگه هم این را گفت و اونم اینکه با متدی به نام add_url_rule این URL را به این تابع وصل کنی
above example, ‘/’ URL is bound wit
اصطلاحا میگن این URL به این تابع Bind شد
app.run
این متد هم ماله Flask و توش میتونی host که ما اینجا 127.0.0.1 است. نمیدونم این 0.0.0.0 به چه دردی میخوره. اون پورت که به صورت پیش فرض برابر 5000 است. اون Debug باید فعال کنی و Option که برو بعدا ببین به چه دردی میخوره.
Th
بعدا ببینیم اینا چی هستن
route() function of the Flask class is a decorator
این @app.route یه Decorator است یعنی میاد روی سر یک Function و یک سری عملکرد اون را افزایش می دهد. مثل همون مثال که زد و Log انداخت و اینا.
Flask constructor t
نمیدونم Constructor برای چی این name را می گیره
An object of Flask
جالبه این Flask خودش یه WSGI را داره
templating engine
اینم یک template engine کامل است که خب اومده بین کد های html ، از certain data source برای رندر شدن Dynammic Web Pages استفاده می کند.
It is a WSGI toolkit
این دیگه کار از یه پیاده سازی و Container گذرنده و یک Toolkit کامل است
mod_
این برای Apache سات
ow
میگه این Python Application باید یک Callable Object داشته باشه که حاوی یک سری Functionality برای این باشد که توسط Apache صدا زده شود. که انگار این Functionality توسط PEP 3333 درست شده است. حالا این WSGI که خودش یک استاندارد یا Interface است و خیلی اومدن این را پیاده سازی کردن مثل uWSGI یا mod-wsgi. به اینا اصطلاحا میگن WSGI Container.
It expla
این wsgi برای این است که چگونه یک وب سرور (مثل Apache) درخواست را بفرسته Web Application. و همچنین Web Application چگونه درخواست ها را به صورت زنجیر در بیاره.
you have to use any of t
از این راه ها میشه apache Web Server را بالا اورد ولی من خودم apachectl start apachectl restart apachectl status
All module
این ماژول هایی مختلفی که داره به صورت DSO یا Dynammic Shared Object هستند که باعث می شود بتونن به راحتی به Core متصل شود. منظور از DSO یعنی Object هایی که میشه بین App های مختلف به اشتراک گذاشته شود.
A
قبل اینکه شروع بشه چنتا اصطلاح باید یاد بگیری: Document Root منظور همون پوشه ای است که باید از تو اون فایل ها را Serve کند Virtualhost میتونی با یک Web Server چندین Domain را مدیریت کنی ServerRoot: بالاترین جایگاه DIrectory Tree برای Apache اینجا است. جایی است که تنظیمات و ارورها و Log File ها قرار دارند. به صورت پیش فرض /etc/httpd است.
httpd.conf/apache2.conf file.
فایل config اینجاست httpd/conf/httpd.conf
If your document root directory does not have an index file
اگر داخل اون Document Root فایل index نباشه به کاربر کل پوشه های موجود را نشون می دهد که خیلی جااالبه
How to Secure Apache Web Server
برای امن کردن Web Server کارهایی میگه که بهتره انجام بشه
IP-based
اینم IP Based است که من فعلا نخوندم
httpd –t
با این دستور همه فایل های Config از نظر syntax تست می شوند.
Apache virtual host Example:
اول همه دقت کن که برای Name Virtual Host میاد هر دو تنظیم را براشون یک IP ست میکنه: 192.168.0.108 * اون سرور ادمین در واقع ایمیلی است که Admin باید وارد کنه * اون DocumentRoot در واقع جایی است که موقع درخواست دادن به این Domain باید Serve بشه * اون ServerName دامینی است که کاربر با زدنش وارد این Virtualhost می شود برای Example2 دقیق همینا را گذاشته ولی یه تغییراتی داده
What is Virtual Host
با این Virtualhost می تونی با یک وب سرور Apache چند domain مختلف را Serve کنی. مثلا با jadi.net بیا این فایل ها را نشونش بده و با jadi.ir بیا این سایت ها را نشونش بده.
Types of Ap
دو جور میشه این Virtual Host را هندل کرد: 1. Name Based مثل همین که میگیم با jadi.net بیا اینجا و با jadi.ir برو اون فایل ها را بیار 2. IP Based یعنی اگر با 192.168.1.50 کار داشت این را نشونش بده و با 192.168.1.100 کار داشت این فایل ها را نشونش بده
httpd
تو سیستم های Redhat باید از httpd استفاده کنی.
modula
چنتا خوبی بزرگ داره از جمله: * ماژولار است و خیلی راحت میتونی این ماژول ها را اضافه کنی. * برای هر Connection یک thread میسازه * حتی بحث های Authenticate برات فراهم میکنه. * بحث Virtual Hosting یکی از بهترین ویژگی های این است
Panda
با استفاده از این تابع میشه برای ستون های عددی مقدار Count و Avg و غیره را بدست آورد
Panda
تعداد ردیف و ستون اون Data Frame را برمیگردونه.
Return the first 5 rows of the DataFrame
5 تا ردیف اول را برات بر میگردونه. یه ورودی هم شاید بگیره که در واقع تعداد ردیف هایی است که میخواد برگردونه
Pandas is a Python library.
یکی از کتاب خونه های خوبه Python.
openpyxl.load_workbook
با استفاده از load_workbook میتونه بره و فایل را باز کنه. دقت کن که مسیر درست باشه
پارامتر دیگر که میگیره بحث read-only است که اگر true باشه فقط دیتا را میخونه و دیگه کاری به فرمول نداره
for i in range(1, column + 1): cell_obj = sheet_obj.cell(row = 2, column = i) print(cell_obj.value, end = " ")
روی ردیف اول قشنگ برات مانور میده.
# of first column print("\nValue of first column")for i in range(1, row + 1): cell_obj = sheet_obj.cell(row = i, column = 1) print(cell_obj.value)
روی ستون اول برات مانور میده و کامل برات پیمایش می کنه
row = sheet_obj.max_row
با استفاده از این max_row و max_column می تونی حداکثر تعداد ردیف و ستون را در بیاری
cell_obj = sheet_obj.cell(row = 1, column = 1)
تو اینجا میاد و با استفاده از دادن row و column میاد و سلول مورد نظر را میخونه.
*** فقط دقت کن که row و column از صفر شروع می شود.
wb_obj.active
صفحه ای که active و اولی است را ورمیداره