django template 例子

template不是django中的内容,而是在python中的。只是在django的松偶合的思想正好用到了这个东西。即写好界面的模板,然后再写好业务逻辑,最后组合即可,这样就将界面与逻辑分开来了。

下面通过一个小例子来看看如何写:

先写一个模板,这里用的pycharm IDE,在项目下自带的templates目录内新建一个模板文件,命名为t1:

<html>
    <body>
         It is now {{ current_date }}.
    </body>
</html>
大致说一下,带有{{}}的定义的是变量,他们后面会被替换为逻辑里面的变量,其余的代码是固定的。


再写urlconf:

from django.conf.urls.defaults import *
from  FirstDjango.view import currenttime
urlpatterns = patterns('',
    ('^time/$',currenttime)
)


新建一个view.py:

from django.http import HttpResponse
from django.template import Context, Template
from django.template.loader import get_template
import  datetime

def currenttime(request):
    now=datetime.datetime.now()
    t=get_template('t1')

    c=Context({'current_date':now})
    html=t._render(c)
    return HttpResponse(html)

首先通过datetime得到当前的时间,然后创建一个模板,这里是从其他地方加载而来的, get_template函数的参数就是要加载的文件的文件名。那么从哪里加载呢?这个要看settings.py文件,里面的TEMPLATE_DIRS变量就是模板文件的加载目录。这个需要根据项目的需要自行设定。我们这里指定加载项目目录下的templates文件夹里的内容。那么就要这样设置:

TEMPLATE_DIRS = (os.path.join(os.path.dirname(__file__), '..', 'templates').replace('\\','/'),)

__file__变量可以得到当前文件的文件名称,dirname函数可以得到指定文件的路径,也就是............/FirstSql/FirstSql下面,而templates文件夹是在第一层的FirstSql下,因此要加一个".."编导上一级目录,再加上templates就好了。最后把\\换/即可。

至此就可以运行了!








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Django模板中使用React组件,需要进行以下步骤: 1. 安装React:首先需要在你的项目中安装React。你可以使用npm或yarn来安装React。安装完成后,你需要在Django模板中引入React的JavaScript文件。 2. 创建React组件:在你的项目中创建React组件。你可以使用ES6语法来编写组件,然后使用Babel将ES6语法转换为浏览器可识别的JavaScript代码。 3. 将React组件渲染到Django模板中:在Django模板中,使用一个占位符来代表React组件。然后,使用JavaScript将React组件渲染到该占位符中。 以下是一个简单的例子: 1. 安装React: ```bash npm install react react-dom ``` 2. 创建React组件: ```javascript // mycomponent.jsx import React from 'react'; class MyComponent extends React.Component { render() { return ( <div> <h1>Hello, World!</h1> </div> ); } } export default MyComponent; ``` 3. 将React组件渲染到Django模板中: ```html <!-- mytemplate.html --> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>My Template</title> </head> <body> <div id="my-component"></div> <script src="/path/to/react.js"></script> <script src="/path/to/react-dom.js"></script> <script src="/path/to/babel.js"></script> <script type="text/babel"> import MyComponent from './mycomponent.jsx'; ReactDOM.render(<MyComponent />, document.getElementById('my-component')); </script> </body> </html> ``` 在上面的例子中,我们将React组件渲染到了一个名为“my-component”的div元素中。我们使用了Babel来将ES6语法转换为浏览器可识别的JavaScript代码。注意,我们在Django模板中引入了React和Babel的JavaScript文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值