我可以从 CodeIgniter 2 中的控制器添加带有动态 JavaScript 的管理链接吗?
我想缓存大部分控制器的输出,但某些页面需要有链接,以便我可以添加和编辑信息。如果我设置一个“js”控制器并将“global.js”路由到“js”控制器的“全局”方法,那么只有当我'时,我不能使用PHP动态添加一些JavaScript到“global.js”我以管理员身份登录?如果访问者不是管理员,是否有更好的方法仅缓存页面?
I want to cache most of my controllers’ output, but some of the pages need to have links so I can add and edit the info. If I set up a “js” controller and routed “global.js” to a “global” method of a “js” controller, couldn’t I use PHP to dynamically add some JavaScript to “global.js” only if I’m logged in as an admin? Is there a better way to only cache pages if the visitor is not an admin?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想在页面上显示添加/编辑/删除链接,但前提是我以管理员身份登录。我还想缓存该页面。 CodeIgniter 的缓存不支持条件缓存,因此我需要一种解决方法来动态插入链接。我使用 PHP 动态编写 JavaScript,以便可以使用 jQuery 插入链接。
1) 我在 /config/routes.php 中设置了这个:
2) 然后我的 js 控制器中有这个函数:
3) 这是 js/global 视图:
在我的视图文件中,我有一个常规的 JavaScript 链接:
如果我访问该页面,并且我以管理员身份登录,我收到警报,如果我没有以管理员身份登录,则不会收到警报。所以现在我只能在登录时让脚本插入添加/编辑/删除链接。
I want to show add/edit/delete links on a page, but only if I'm logged in as an admin. I also want to cache the page. CodeIgniter's caching doesn't support conditional caching, so I needed a workaround to insert the links dynamically. I'm using PHP to dynamically write JavaScript so I can use jQuery to insert the links.
1) I set this in /config/routes.php:
2) Then I have this function in my js controller:
3) And this is the js/global view:
In my view files I have a regular JavaScript link:
If I visit the page and I'm logged in as an admin, I get an alert, and I don't get an alert if I'm not logged in as an admin. So now I can have the script insert add/edit/delete links only if I'm logged in.