2007年03月26日 星期一 12:32
之前一直做 ASP.NET, 对于一个页面文件一个 view 的做法感觉很好。而 django 中在一个文件里很多个函数,每一个代表一个 view. 这样的做法在网站程序复杂化后,查找代码很不方便。当然这个问题有解决的办法,就是多拆分成 applications. 不过,有时候一个功能到底应该归于哪个 app 还真的不是一个简单的问题。并且多个 apps 会导致每次 syncdb 都要考虑很多个 model 文件做一遍,挺麻烦。我更需要的是一种简易的拆分机制。 因此我现在基本上是通过物理文件的方式,把同类的 views 放到一个文件里。即 views_xxx.py, views_yyy.py 的组织形式,反正 django 是通过 urls 来分派请求的,这一点挺方便。 有没有必要做成像 ASP.NET 那样一个文件一个 view 呢?好多选择还没想明白。先瞎写这么多吧。 请大家讨论,谢谢。 致, 礼 木野狐
2007年03月26日 星期一 12:44
> > 之前一直做 ASP.NET <http://asp.net/>, 对于一个页面文件一个 view 的做法感觉很好。而 django > 中在一个文件里很多个函数,每一个代表一个 > view. 这样的做法在网站程序复杂化后,查找代码很不方便。当然这个问题有解决的办法,就是多拆分成 applications. > 不过,有时候一个功能到底应该归于哪个 app 还真的不是一个简单的问题。并且多个 apps 会导致每次 syncdb 都要考虑很多个 > model 文件做一遍,挺麻烦。我更需要的是一种简易的拆分机制。 > > 因此我现在基本上是通过物理文件的方式,把同类的 views 放到一个文件里。即 views_xxx.py, views_yyy.py > 的组织形式,反正 django 是通过 urls 来分派请求的,这一点挺方便。 > > 有没有必要做成像 ASP.NET <http://asp.net/> 那样一个文件一个 view 呢?好多选择还没想明白。先瞎写这么多吧。 > > 请大家讨论,谢谢。 > > 致, > 礼 > > 木野狐 > 或者可以把 views 整成一个包。 甚至在 views\__init__.py 中写上: from someviews1 import * from someviews2 import * 这种方式的分解对 models 特别有效。 -- http://codeplayer.blogspot.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://python.cn/pipermail/python-chinese/attachments/20070326/bf6a4c8c/attachment.html
2007年03月26日 星期一 12:45
On 3/26/07, Neil(木野狐) <chenrong2003在gmail.com> wrote: > 之前一直做 ASP.NET, 对于一个页面文件一个 view 的做法感觉很好。而 django 中在一个文件里很多个函数,每一个代表一个 > view. 这样的做法在网站程序复杂化后,查找代码很不方便。当然这个问题有解决的办法,就是多拆分成 applications. > 不过,有时候一个功能到底应该归于哪个 app 还真的不是一个简单的问题。并且多个 apps 会导致每次 syncdb 都要考虑很多个 > model 文件做一遍,挺麻烦。我更需要的是一种简易的拆分机制。 > > 因此我现在基本上是通过物理文件的方式,把同类的 views 放到一个文件里。即 views_xxx.py, views_yyy.py > 的组织形式,反正 django 是通过 urls 来分派请求的,这一点挺方便。 > > 有没有必要做成像 ASP.NET 那样一个文件一个 view 呢?好多选择还没想明白。先瞎写这么多吧。 > > 请大家讨论,谢谢。 > 这个可能看个人的管理方式。你的划分粒度很小,而app是以一个完整的功能还说的。在一个复杂一些的app,可以把view分成几个文件这是有的。不过细到一个view一个文件,会造成文件太多,也未必方便。 -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2007年03月26日 星期一 13:08
yi huang >> agree, 我比较倾向于把 views 做成包。 limodou "不过细到一个view一个文件,会造成文件太多,也未必方便。" >> 文件多会对性能造成影响吗?比如有很多 views 文件需要导入。而写在一个文件中是否在多次请求之间,有一定的缓存机制,能节省 import 的时间? 在 07-3-26,limodou<limodou在gmail.com> 写道: > On 3/26/07, Neil(木野狐) <chenrong2003在gmail.com> wrote: > > 之前一直做 ASP.NET, 对于一个页面文件一个 view 的做法感觉很好。而 django 中在一个文件里很多个函数,每一个代表一个 > > view. 这样的做法在网站程序复杂化后,查找代码很不方便。当然这个问题有解决的办法,就是多拆分成 applications. > > 不过,有时候一个功能到底应该归于哪个 app 还真的不是一个简单的问题。并且多个 apps 会导致每次 syncdb 都要考虑很多个 > > model 文件做一遍,挺麻烦。我更需要的是一种简易的拆分机制。 > > > > 因此我现在基本上是通过物理文件的方式,把同类的 views 放到一个文件里。即 views_xxx.py, views_yyy.py > > 的组织形式,反正 django 是通过 urls 来分派请求的,这一点挺方便。 > > > > 有没有必要做成像 ASP.NET 那样一个文件一个 view 呢?好多选择还没想明白。先瞎写这么多吧。 > > > > 请大家讨论,谢谢。 > > > 这个可能看个人的管理方式。你的划分粒度很小,而app是以一个完整的功能还说的。在一个复杂一些的app,可以把view分成几个文件这是有的。不过细到一个view一个文件,会造成文件太多,也未必方便。 > > > -- > I like python! > UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad > My Blog: http://www.donews.net/limodou > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese
2007年03月26日 星期一 13:19
On 3/26/07, Neil(木野狐) <chenrong2003在gmail.com> wrote: > yi huang > >> agree, 我比较倾向于把 views 做成包。 > > limodou > "不过细到一个view一个文件,会造成文件太多,也未必方便。" > >> 文件多会对性能造成影响吗?比如有很多 views 文件需要导入。而写在一个文件中是否在多次请求之间,有一定的缓存机制,能节省 import 的时间? > 对于性能倒不一定有影响,只是管理起来也未必方便。特别是有些相同的修改文件多了改起来也麻烦。 -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2007年03月26日 星期一 17:47
我觉得看自己的习惯了。 我是将同一模块的功能放到同一个view里面,等自己觉得这个view太大了。 再将这个view细分成多个view。 在 07-3-26,limodou<limodou在gmail.com> 写道: > On 3/26/07, Neil(木野狐) <chenrong2003在gmail.com> wrote: > > yi huang > > >> agree, 我比较倾向于把 views 做成包。 > > > > limodou > > "不过细到一个view一个文件,会造成文件太多,也未必方便。" > > >> 文件多会对性能造成影响吗?比如有很多 views 文件需要导入。而写在一个文件中是否在多次请求之间,有一定的缓存机制,能节省 import 的时间? > > > 对于性能倒不一定有影响,只是管理起来也未必方便。特别是有些相同的修改文件多了改起来也麻烦。 > > -- > I like python! > UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad > My Blog: http://www.donews.net/limodou > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese
2007年03月26日 星期一 21:11
一个HTML附件被移除... URL: http://python.cn/pipermail/python-chinese/attachments/20070326/92b9f730/attachment.htm
2007年03月27日 星期二 15:14
views 中的代码量提炼到其他业务逻辑模块中去,我觉得这是一个重构的过程;很少能够一步做到的。 在 07-3-26,HackGou<hackgou在163.com> 写道: > 我觉得根据个人爱好, > 不过就我而言,我宁愿把业务逻辑封在modeles里面,在view里面只需要很少的一些显示方面的代码,而且这些代码也可以在 > template中配合tag和filter搞定,所以我的views一般不会很长, >
Zeuux © 2025
京ICP备05028076号