Joh*_*ard 23 django frameworks ruby-on-rails web-frameworks
是一个Web框架,比如Django和Ruby on Rails,只是一种显示可以通过http正常编写的代码的方式吗?或者它是否用于更多服务器端事物,例如存储数据.它是用作网站的前端还是后端?
Ada*_*ear 48
让我们谈一谈不是Web框架的事情.
在网络的最基本级别,您有一个网页.它通常是一个愚蠢的页面,上面有一些文字,可能是嵌入式视频或一些图像.它(或者至少在理想情况下不应该)关心它所显示的东西来自何处.您不需要任何脚本,数据库等,以便拥有静态网页.使用的典型工具:HTML,CSS,Javascript.
然后你有内容管理系统(CMS),比如Wordpress.它们为您的网站添加了更多功能,但实际上它们只是为您提供了一种管理网页集合的方法 - 即时创建网页等.您可以按原样使用它们并通过管理与CMS进行交互他们提供的页面.您可以扩展其中一些(例如,Wordpress有一个插件架构),但您通常不关心它们的工作方式或特定的API.
而且那么你的web框架.它们允许您以结构化的方式完成其他所有工作.您不需要有一个框架来创建一个由数据库驱动的站点,但它可以提供帮助.框架通过常规为您带来很多便利.例如,如果要向站点添加新部分,可以创建"模块",将其上载到已知位置,也可以更新配置文件,并且或多或少地将自身连接到您的站点.
该框架可以处理您的数据库详细信息或从其他服务中提取数据(或通过服务提供数据).它可以根据模板自动为您构建页面.它可以通过URL路由来"美化"您的链接.它可以帮助您确保没有任何网站链接中断 - 通过动态确定页面的位置而不是手动硬编码链接.它们允许您将后端问题(业务逻辑,数据访问,身份验证等)与您的视图分开,从而使您可以轻松更新页面设计(如果您愿意).
专门解决你的问题......
Web框架生成通过HTTP提供的HTML页面.这里没有特别的魔力.您经常可以自己编写相同的页面,但框架允许您定义模板,并根据您的需要显示不同的页面,而无需您直接参与.
Web框架不存储数据.他们可以访问或提供它,但它们本身不是任何类型的数据库.Web框架位于服务器端,为客户端提供页面并处理客户端的输入.
Django和Rails等框架在后端使用.还有其他框架,如jQuery,可用于编写客户端活动的脚本,但它们不是同一意义上的Web框架.通常,当有人说"Web框架"时,它们意味着服务器端.
希望这可以帮助.