一组helper标记和表单小部件,用于使django和vue运行得很好。
djangovue的Python项目详细描述
djangovue
一组helper标记和表单小部件,用于使django和vue运行得很好。
安装
pip install djangovue
标记示例
classIndexView(TemplateView):template='index.html'defget_context_data(self,**kwargs):context=super().get_context_data(**kwargs)context['message']='Hello from Django'returncontext
{% load djangovue %} {% load_vuejs %} {% djangovue on %} <divid="app"><p> {{ message }} </p> {% djangovue off %} <p> {{ message }} </p> {% enddjangovue off %} </div><script>newVue({el:'#app',data:{message:'Hello from Vue'}});</script> {% enddjangovue%}
小部件示例
fromdjangoimportformsfromdjangovueimportwidgetsclassUserForm(forms.Form):username=forms.CharField(max_length=30,widget=widgets.TextInput(model="user.username",modifier=widgets.TextInput.LAZY,attrs={":disabled":"disable"},),)first_name=forms.CharField(max_length=30,widget=widgets.TextInput(model="user.first_name",attrs={":disabled":"disable"}),)last_name=forms.CharField(max_length=30,widget=widgets.TextInput(model="user.last_name",attrs={":disabled":"disable"}),)gender=forms.ChoiceField(choices=[("male","Male"),("female","Female")],widget=widgets.RadioSelect(attrs={"v-model":"user.gender",":disabled":"disable"}),)disable=forms.BooleanField(required=False,widget=widgets.CheckboxInput()# v-model will automatically be set to `disable`)
开发
如果您希望开发库,那么makefile中有一些帮助函数可以帮助您开始。
make install # Installs the project dependencies including the node modules required for the DjangoVue Vue plugin make bundle # Transpiles and bundles the DjangoVue.ts file make test# Runs tests make black # Applies black formatting to the project
安装后,请运行以下命令查看示例:
cd djangovue/examples
poetry run ./manage.py runserver
注意这个项目使用Poetry来打包和管理依赖项。