<!DOCTYPE html>
    <html lang="vi" xmlns="http://www.w3.org/1999/xhtml" prefix="og: http://ogp.me/ns#">
    <head>
<title>Cách dùng Bootstrap 5 với Django</title>
<meta name="description" content="Cách dùng Bootstrap 5 với Django - Savefile - Tin Tức - https&#x3A;&#x002F;&#x002F;www.nguoicodonvn2008.info&#x002F;vi&#x002F;news&#x002F;savefile&#x002F;kien-thuc-may-tinh&#x002F;cach-dung-bootstrap-5-voi-django-6585.html">
<meta name="author" content=".: Nguoicodonvn2008.info - Cõi lòng người cô đơn :.">
<meta name="copyright" content=".: Nguoicodonvn2008.info - Cõi lòng người cô đơn :. [admin@nguoicodonvn2008.info]">
<meta name="robots" content="index, archive, follow, noodp">
<meta name="googlebot" content="index,archive,follow,noodp">
<meta name="msnbot" content="all,index,follow">
<meta name="generator" content="NukeViet v4.5">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:title" content="Cách dùng Bootstrap 5 với Django">
<meta property="og:type" content="website">
<meta property="og:description" content="Savefile - Tin Tức - https&#x3A;&#x002F;&#x002F;www.nguoicodonvn2008.info&#x002F;vi&#x002F;news&#x002F;savefile&#x002F;kien-thuc-may-tinh&#x002F;cach-dung-bootstrap-5-voi-django-6585.html">
<meta property="og:site_name" content=".&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.">
<meta property="og:url" content="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-dung-bootstrap-5-voi-django-6585.html">
<link rel="shortcut icon" href="https://www.nguoicodonvn2008.info/favicon.ico">
<link rel="canonical" href="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-dung-bootstrap-5-voi-django-6585.html">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/" title="Tin Tức" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/karaoke-dual/" title="Tin Tức - Karaoke Dual" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/nhac-tre/" title="Tin Tức - Nhạc trẻ" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tru-tinh/" title="Tin Tức - Trữ tình" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/nuoc-ngoai/" title="Tin Tức - Nước ngoài" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/remix/" title="Tin Tức - Remix" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tam-su-tinh-yeu/" title="Tin Tức - Tâm sự tình yêu" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tho-suu-tam/" title="Tin Tức - Thơ sưu tầm" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/cuoc-song/" title="Tin Tức - Cuộc sống" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/phan-mem/" title="Tin Tức - Phần mềm" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/kien-thuc-may-tinh/" title="Tin Tức - Kiến thức máy tính" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/hoc-tap/" title="Tin Tức - Học tập" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/tai-lieu/" title="Tin Tức - Tài liệu" type="application/rss+xml">
<link rel="alternate" href="https://www.nguoicodonvn2008.info/vi/news/rss/de-thi/" title="Tin Tức - Đề thi" type="application/rss+xml">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/assets/css/font-awesome.min.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/bootstrap.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/style.non-responsive.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/news.css" type="text/css">
<link rel="preload" as="style" href="https://www.nguoicodonvn2008.info/themes/default/css/custom.css" type="text/css">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/jquery/jquery.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/language/vi.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/DOMPurify/purify3.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/global.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/assets/js/site.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/news.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/custom.js" type="text/javascript">
<link rel="preload" as="script" href="https://www.nguoicodonvn2008.info/themes/default/js/bootstrap.min.js" type="text/javascript">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/assets/css/font-awesome.min.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/bootstrap.non-responsive.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/style.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/style.non-responsive.css">
<link rel="StyleSheet" href="https://www.nguoicodonvn2008.info/themes/default/css/news.css">
<link rel="stylesheet" href="https://www.nguoicodonvn2008.info/themes/default/css/custom.css">
<style type="text/css">
	body{background: #fff;}
</style>
    </head>
    <body>
<div id="print">
	<div id="hd_print">
		<h2 class="pull-left">.&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.</h2>
		<p class="pull-right"><a title=".&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;." href="https://www.nguoicodonvn2008.info/">https://www.nguoicodonvn2008.info</a></p>
	</div>
	<div class="clear"></div>
	<hr />
	<div id="content">
		<h1>Cách dùng Bootstrap 5 với Django</h1>
		<ul class="list-inline">
			<li>Thứ hai - 09/01/2023 22:56</li>
			<li class="hidden-print txtrequired"><em class="fa fa-print">&nbsp;</em><a title="In ra" href="javascript:;" onclick="window.print()">In ra</a></li>
			<li class="hidden-print txtrequired"><em class="fa fa-power-off">&nbsp;</em><a title="Đóng cửa sổ này" href="javascript:;" onclick="window.close()">Đóng cửa sổ này</a></li>
		</ul>
		<div class="clear"></div>
		<div id="hometext">
		</div>
				<div class="imghome">
			<img alt="Cách dùng Bootstrap 5 với Django" src="https://st.quantrimang.com/photos/image/2023/01/10/bootstrap-django-7.jpg" width="460" class="img-thumbnail" />
		</div>
		<div class="clear"></div>
		<div id="bodytext" class="clearfix">
			<p style="text-align: justify;">Bạn có thể đơn giản hóa&nbsp;<strong>thiết kế của trang Django với framework front-end mạnh mẽ Bootstrap 5</strong>. Dưới đây là chi tiết&nbsp;<strong>cách dùng Bootstrap 5 trong Django</strong>.</p>

<p style="text-align: justify;"><img alt="Bootstrap trong Django" data-i="0" data-src="https://st.quantrimang.com/photos/image/2023/01/10/bootstrap-django-7.jpg" data-was-processed="true" height="340" src="https://st.quantrimang.com/photos/image/2023/01/10/bootstrap-django-7.jpg" width="650" /></p>

<p style="text-align: justify;">Django dùng các kiểu CSS được xác định trước của Bootstrap và plugin JavaScript để tạo kiểu trang web. Dù nó giảm sự phức tạp trong thiết kế, cấu hình CSS trong Django có thể thật sự thử thách với người mới bắt đầu. Hướng dẫn dưới đây sẽ giúp bạn thực hiện việc đó dễ dàng hơn.</p>

<h2 style="text-align: justify;">Cài đặt Bootstrap trong dự án Django</h2>

<p style="text-align: justify;">Bạn có hai&nbsp;cách dùng Bootstrap 5&nbsp;trong dự án Django. Bạn có thể cài đặt nó trong ứng dụng hoặc tham chiếu file bằng&nbsp;CDN của Bootstrap. Dự án này dùng phương pháp cũ.</p>

<p style="text-align: justify;">Trước khi cài đặt Bootstrap, bạn cần tạo một dự án Django mới và một ứng dung mang tên gallery. App này sẽ là một thư viện ảnh. Bạn sẽ dùng Bootstrap để tạo kiểu thanh điều hướng của ứng dụng.</p>

<p style="text-align: justify;">Tiếp theo, cài đặt Bootstrap bằng lệnh sau:</p>

<pre id="pre0">
<code>pipenv install django-bootstrap5 # installs Bootstrap version 5</code></pre>

<p style="text-align: justify;">Kiểm tra Pipfile và xác nhận có phần phụ thuộc Bootstrap 5. Giờ bạn cần thông báo cho dự án Django rằng bạn đang dùng một phần phụ thuộc Bootstrap.</p>

<p style="text-align: justify;">Trong file&nbsp;<strong>settings.py</strong>, đăng ký Bootstrap như bên dưới:</p>

<pre id="pre1">
<code>INSTALLED_APPS = &#91;\n &#039;gallery&#039;,\n &#039;bootstrap5&#039;, \n&#93;</code></pre>

<p style="text-align: justify;">Đăng ký Bootstrap trong cài đặt dự án kết nối phần phụ thuộc django-bootstrap5 cho dự án của bạn. Nó sẽ có sẵn cho bất kỳ ứng dụng khác được xác định trong dự án.</p>

<h2 style="text-align: justify;">Áp dụng Bootstrap trên một mẫu</h2>

<p style="text-align: justify;">Đầu tiên, tạo thư mục mang tên&nbsp;<strong>templates</strong>&nbsp;trong thư mục ứng dụng của bạn. Bên trong nó, tạo file&nbsp;<strong>base.html&nbsp;</strong>và&nbsp;<strong>navbar.html</strong>. Các mẫu này sẽ chứa file HTML mà Bootstrap sẽ tạo kiểu.</p>

<p style="text-align: justify;">Mặc dù bạn có thể áp dụng Bootstrap trên mẫu navbar.html, dùng file&nbsp;<strong>base</strong>&nbsp;vẫn cần thiết. Tệp base.html sẽ chứa tất cả tập lệnh và liên kết để áp dụng cho trang bất kỳ. Nó giảm độ phức tạp của các mẫu riêng lẻ, làm code của bạn sạch và dễ hiểu hơn.</p>

<p style="text-align: justify;">Trong file&nbsp;<strong>base.html</strong>, bao gồm lệnh sau:</p>

<pre id="pre2" style="text-align: justify;">
{% load bootstrap5 %}\n \n \n&lt;!DOCTYPE html&gt;\n \n&lt;html lang=&quot;en&quot;&gt;\n \n&lt;head&gt;\n \n &lt;meta charset=&quot;UTF-8&quot;&gt;\n \n &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=edge&quot;&gt;\n \n &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;\n &lt;title&gt; Gallery &lt;/title&gt;\n \n \n {% block styles %}\n \n \n {% bootstrap_css %}\n \n \n {% endblock %}\n \n&lt;/head&gt;\n&lt;body&gt; \n {% include &#039;navbar.html&#039; %}\n {% block content %} {% endblock %}\n {% block scripts %}\n &lt;script src=&quot;https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js&quot; integrity=&quot;sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM&quot; crossorigin=&quot;anonymous&quot;&gt;\n &lt;/script&gt;\n {% bootstrap_javascript %}\n&lt;/body&gt;\n&lt;/html&gt;\n</pre>

<p style="text-align: justify;">Đầu tiên, tải phần phụ thuộc bootstrap 5. Sau đó, tạo hai kiểu khối tại nơi bạn xác định tất cả các kiểu cho mẫu. Bao gồm tag mẫu&nbsp;<code>{% bootstrap_css %}</code>&nbsp;và một link với tệp Bootstrap CSS.</p>

<p style="text-align: justify;">Tiếp theo, tạo một khối tập lệnh xác định chức năng của JavaScript. Bao gồm navbar.html trong các link&nbsp;<code>base.html</code>&nbsp;dẫn tới Bootstrap.</p>

<p style="text-align: justify;">Kiểm tra cấu hình bằng cách thêm các kiểu Bootstrap vào mẫu&nbsp;<code>navbar.html</code>:</p>

<pre id="pre3" style="text-align: justify;">
&lt;nav class=&quot;navbar navbar-expand-lg&quot;&gt;\n &lt;div class=&quot;container-fluid&quot;&gt;\n &lt;h2 class=&quot;brand&quot; style=&quot;color:green&quot;&gt;PICHA GALLERY&lt;/h2&gt;\n \n &lt;button class=&quot;navbar-toggler&quot; type=&quot;button&quot; data-toggle=&quot;collapse&quot; data-target=&quot;#navbarSupportedContent&quot; aria-controls=&quot;navbarSupportedContent&quot; aria-expanded=&quot;false&quot; aria-label=&quot;Toggle navigation&quot;&gt;&lt;i class=&quot;fas fa-bars&quot;&gt;&lt;/i&gt;&lt;/button&gt;\n \n &lt;div class=&quot;collapse navbar-collapse&quot; id=&quot;navbarSupportedContent&quot;&gt;\n &lt;ul class=&quot;navbar-nav ml-auto mb-2 mb-lg-0&quot;&gt;\n &lt;li class=&quot;nav-item&quot;&gt;&lt;a class=&quot;nav-link nav-link-1 active&quot; aria-current=&quot;page&quot; href=&quot;{% url &#039;home&#039; %}&quot; style=&quot;color:green&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;\n &lt;li class=&quot;nav-item&quot;&gt;&lt;a class=&quot;nav-link nav-link-2&quot; href=&quot;#gallery&quot; style=&quot;color:green&quot;&gt;Gallery&lt;/a&lt;/li&gt;\n &lt;/ul&gt;\n &lt;/div&gt;\n &lt;/div&gt;\n&lt;/nav&gt;</pre>

<p style="text-align: justify;">Giờ chạy server này và kiểm tra trang của bạn trong một trình duyệt. Bạn sẽ thấy kiểu dang mà Bootstrap áp dụng cho thanh điều hướng.</p>

<h2 style="text-align: justify;">Tại sao dùng Bootstrap trong dự án Django?</h2>

<p style="text-align: justify;">Bạn chủ yếu sử dụng Django để phát triển back-end, nhưng nó cũng có thể tạo ra các trang front-end tuyệt vời. Sử dụng Bootstrap để tạo kiểu cho các trang giao diện người dùng là cách thực hành hay cho người mới bắt đầu là quen Django. Bạn sẽ hiểu sâu hơn về Django khi tạo các ứng dụng toàn ngăn xếp.</p>

<p style="text-align: justify;">Giống như bất kỳ framework front-end, bạn có thể dùng class Bootstrap với dự án Django để tạo kiểu cho các trang web. Bootstrap 5 có những phần tử tốt hơn và một style sheet nhanh. Nó cũng đã cải thiện khả năng đáp ứng trên các thiết bị hiện đại.</p>
		</div>
				<div id="author">
						<p>
				<strong>Nguồn tin:</strong>
				Quantrimang.com
			</p>
		</div>
	</div>
	<div id="footer" class="clearfix">
		<div id="url">
			<strong>URL của bản tin này: </strong><a href="https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-dung-bootstrap-5-voi-django-6585.html" title="Cách dùng Bootstrap 5 với Django">https://www.nguoicodonvn2008.info/vi/news/savefile/kien-thuc-may-tinh/cach-dung-bootstrap-5-voi-django-6585.html</a>

		</div>
		<div class="clear"></div>
		<div class="copyright">
			&copy; .&#x3A; Nguoicodonvn2008.info - Cõi lòng người cô đơn &#x3A;.
		</div>
		<div id="contact">
			<a href="mailto:admin@nguoicodonvn2008.info">admin@nguoicodonvn2008.info</a>
		</div>
	</div>
</div>
        <div id="timeoutsess" class="chromeframe">
            Bạn đã không sử dụng Site, <a onclick="timeoutsesscancel();" href="https://www.nguoicodonvn2008.info/#">Bấm vào đây để duy trì trạng thái đăng nhập</a>. Thời gian chờ: <span id="secField"> 60 </span> giây
        </div>
        <div id="openidResult" class="nv-alert" style="display:none"></div>
        <div id="openidBt" data-result="" data-redirect=""></div>
		</script>
		<div class="car-top">
  <span><img src="https://www.nguoicodonvn2008.info/themes/default/images/car.png" alt=""></span>
</div>
<script src="https://www.nguoicodonvn2008.info/assets/js/jquery/jquery.min.js"></script>
<script>var nv_base_siteurl="/",nv_lang_data="vi",nv_lang_interface="vi",nv_name_variable="nv",nv_fc_variable="op",nv_lang_variable="language",nv_module_name="news",nv_func_name="savefile",nv_is_user=0, nv_my_ofs=-4,nv_my_abbr="EDT",nv_cookie_prefix="nv4c_e856T",nv_check_pass_mstime=1738000,nv_area_admin=0,nv_safemode=0,theme_responsive=0,nv_recaptcha_ver=2,nv_recaptcha_sitekey="",nv_recaptcha_type="image",XSSsanitize=1;</script>
<script src="https://www.nguoicodonvn2008.info/assets/js/language/vi.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/DOMPurify/purify3.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/global.js"></script>
<script src="https://www.nguoicodonvn2008.info/assets/js/site.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/news.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/main.js"></script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/custom.js"></script>
<script type="application/ld+json">
        {
            "@context": "https://schema.org",
            "@type": "Organization",
            "url": "https://www.nguoicodonvn2008.info",
            "logo": "https://www.nguoicodonvn2008.info/uploads/angel.gif"
        }
        </script>
<script src="https://www.nguoicodonvn2008.info/themes/default/js/bootstrap.min.js"></script>
<script type="text/javascript">
var $scrolltop = $('.car-top');
$scrolltop.on('click', function () {
    $('html,body').animate({
        scrollTop: 0
    }, 800);
    $(this).addClass("car-run");
    setTimeout(function(){ $scrolltop.removeClass('car-run');}, 1000);
    return false;
});
$(window).on('scroll', function ()
{ 
    if($(window).scrollTop() >= 200)
    {
        $scrolltop.addClass("show");
        $scrolltop.addClass("car-down");
    }
    else
    {
       $scrolltop.removeClass("show");
       setTimeout(function(){ $scrolltop.removeClass('car-down');}, 300);
    }
});
</script>
</body>
</html>