https://blog.csdn.net/u010105969/article/details/48895361 在Xcode中的textField中输入中文: 依次选择:Xcode...—>product —> scheme —> Edit scheme —> run —> options — > application Region.将选项改成”中国”即可.记得最后在键盘中选择简体拼音...设置后,如果键盘无法弹出,可以试着重置模拟器.
写api接口时一般会在控制器中简单验证参数的正确性。 使用yii只带验证器(因为比较熟悉)实现有两种方式(效果都不佳)。 针对每个请求单独写个Model , 定义验证规则并进行验证。...缺点:写好多参数验证的Model 类。 使用独立验证器 中提到的$validator- validateValue() 方法直接验证变量值。缺点:写实例化很多验证器对象。...有么有“一劳永逸”的做法,像在Model 中通过rules 方法定义验证规则并实现快速验证的呢?有!...从验证规则中获取可赋值的属性。 中的验证错误消息。 <?
你将了解到: 安装 Vivaldi 的 GUI 和命令行方式 将 Vivaldi 更新到最新版本的技巧 在 Ubuntu 中卸载 Vivaldi 的方式 非自由软件警告!...Vivaldi 并非完全的开源软件。它的 UI 界面是闭源的。之所以在这里介绍这款浏览器,是因为 Vivaldi 团队正努力让该软件在 Linux 平台上可用。...在 Ubuntu 中更新 Vivaldi GUI 和命令行这两种方式都会在系统里添加 Vivaldi 的仓库。...Vivaldi 浏览器会跟随系统更新 在 Ubuntu 中卸载 Vivaldi 如果你不喜欢 Vivaldi 或者不再使用,你可以直接卸载。...其实这也很简单,打开终端,输入以下命令: sudo apt remove vivaldi-stable sudo 会 在 Ubuntu 中给予你 root 权限。你需要输入当前账户的密码。
在 Visual Studio 的解决方案资源管理器中隐藏一些文件 2018-07-04 12:30 项目文件中有一些属性几乎是专门为 IDE...(才不会透漏这些属性其实本就是为 Visual Studio 而准备的呢。) 本文将介绍如何在 Visual Studio 的解决方案资源管理器中隐藏一些文件。...---- 原生支持 Visual Studio 原生支持 Visible 属性用来控制某一项文件是否在 Visual Studio 的解决方案资源管理器中显示。...考虑一下像上图那样有些文件在文件夹中的情况,然后我们再次设置 Visible="false" 属性: ? 文件夹竟然还在!这是 Visual Studio 的 Bug 吗?...\src\obj\**\*.cs;" /> 活学活用 这并不是说在 Visual Studio 的解决方案资源管理器中,隐藏文件都应该采用 <Target
大家好,我是爱撸码的开源大叔! Excel 作为办公软件中使用最频繁的产品之一,是我们办公活动中必不可缺的一环。如果我们的系统中能够集成 Excel,相比会是我们一大亮点。...支持文本的截断、溢出、自动换行 数据类型 货币, 百分比, 数字, 日期 单元格内多样式 (Alt+Enter单元格内换行、上标、下标、单元格内可定义每个文字的不同样式) 操作体验 撤销/重做 复制/...粘贴/剪切操作 (支持 Luckysheet 到 Excel 和 Excel 到 Luckysheet 带格式的互相拷贝) 快捷键支持 (快捷键操作保持与 Excel 一致,如果有不同或者缺失请反馈给我们...) 格式刷 (与 Google Sheet 类似) 任意选区拖拽 (选择单元格,输入公式,插入图表,会与选区相关,可以通过任意拖动和放大缩小选区来改变与之关联的参数) ⚡Luckysheet专有 矩阵计算...PDF) 树形菜单 (类似 Excel 中的分级显示(分组)) 表格新功能 (类似 Excel 中表格的筛选器和切片器) CSV,TXT导入及导出 (专为 Luckysheet 打造的导入导出插件,支持密码
凡是我yii2学习社群的成员都知道,我不止一次给大家说构造表单100%使用yii2的ActiveForm来实现,这除了能和AR更好结合外就是自动生成csrf隐藏域,一个非常安全的举措。...4、就在第三步操作的2分钟内,老王成功让老刘(liuxiaoer)再一次访问了自己做的网页,你知道的,此刻老刘(liuxiaoer)在银行的session还没有过期,老王网页给银行服务器发送请求后,验证通过...csrftoken=xxxx POST 放到表单的隐藏域 对于GET请求,这里有一点要说明,在一个网站中请求的...这种方法适合上面批量添加token不方便的情况,一次性操作,不过局限性也比较大,XMLHttpRequest请求通常用在ajax方法中,并非所有请求都适合。...getCsrfToken() 生成具体的csrfToken,就是你在表单隐藏域中看到的那个值,这个值将来会传到服务器和真实的csrfToken进行对比,验证是否合法。
当服务器端进行了存储后要生成一个key,将其返给小程序,以后小程序凡是发起需要用户认证的请求,都带这个key用来判断用户身份,在yii2中,这个key就是我们restful中的access_token。...客服消息 在小程序开发中,客服消息的重要性不言而喻,它除了作为客服服务外,还作为小程序到微信浏览器的一个渠道,比如本次在「宝宝爱识图」的开发中,我用它来实现将收款微信号到用户的推送工作,这主要是解决在ios...一般的策略是让客户点击客服按钮然后输入一个关键词,服务器端通过客服消息接口识别用户身份,结合关键词给予响应的消息推送。...让yii2能解析json的请求内容 默认情况下yii2并不能识别请求中的json格式,而我们小程序在发起请求时喜欢用它,因此我们要对yii2进行一下配置。...在yii2的restful中的用户认证使用了行为机制,我们来看下流程代码 // 在需要授权的控制器内 class CardController extends ActiveController {
// config/web.php 'language'=>'zh-CN' 静态缓存问题 在用yii2的时候,我们习惯将静态文件(图片、css文件、js文件等)放到资源类中管理,但是可能存在浏览器缓存问题...开发中 本段为你介绍我在yii2开发中一些习惯和小技巧,希望对你有用。...模型的重要性 很多yii2的初学者喜欢将大量逻辑写到控制器的动作(action)中,这是不对的,我们的重点应该在模型中,而控制器仅仅是做输入输出。 我们拿关联举个例子,下面的这段代码是不好的。...,但是有的时候输入并不会这样老实,我们需要进行更多验证,请不要将验证直接写到action内,比如上面代码中的if判断。...当然从理念上说也有点不同 行为 一些类附加的属性 父类 一些类共同的属性 我的用法(不一定就是对的),尤其在模块中我喜欢为控制器增加一层父类。
Composer 的全局配置文件 config.json 中。...输入后回车,会让我们输入yes或者no进行确认,输入yes确认即可 5、ok了之后,你仍然需要做得是切换到根目录下,执行命令composer install,这里的根目录指的是common目录的同级目录...首先你需要在你的web服务器(apache或者nginx)上配置一台虚拟主机,其根目录指向这个目录 /xxx/....../advanced;配置好虚拟主机之后,你可以在浏览器的地址栏上输入 http://你配置的域名/frontend/web/ 看效果了,界面上显示一个大大的Congratulations即表示安装成功!...yii2 2.0.12 接下来的操作请从【通过归档文件进行安装】的第3步开始参考 注意:如果安装过程中需要输入你的github账号的token,有账号的登录你的github账号生成一个token输入后回车即可
对于一般的restful规则的yii2路由配置如下图 alt 红色框内的代表一个标准restful中控制器路由规则,绿色框内是你必须要填写的,其他的except、pluralize、extraPatterns...小提示:在兄弟连PHP原创视频中对这个原理也进行了详细的解析(《Yii2的RESTful讲解》第三节) 配置控制器 urlManager配置完成,接下来就是写一个控制器了,老沙对此很熟悉,不就是一个继承问题么...是的,这是一个继承问题,如果你想让yii2支持restful,请将对应控制器继承到 yii\rest\ActiveController 上,最简单的一个具有restful资源操作能力的控制器如下图。...alt 是的,就是这样,当控制器继承于 ActiveController 在指定一个$modelClass后,这个控制器就可以对 $modelClass 对应的数据表进行列表、详情、生成、更新、删除等操作...,而你无需再写任何对应代码,简单吧~~ 这里要注意几点 第一: 必须指定$modelClass,每个控制器代表一种资源,隐身就是一个数据表中的数据或你操作系统的文件云云,总之它是一种资源。
为什么使用过滤器 通常情况下,过滤器将代码绑定到所有的操作上,也就是说,每一个操作的执行,都需要先或后执行过滤器,所以,可以用来执行权限检测、缓存处理等事情 在哪里使用过滤器 在控制器中,定义: public.../或 yii\base\ActionFilter::afterAction() 方法来创建动作的过滤器 定义在beforeAction()中的代码会在操作执行之前执行 定义在afterAction(...过滤器应用.png 在beforAction中,如果返回true表示放行,操作继续执行,如果返回false,表示停止,操作不再执行。 加载过滤器 ?...验证码 Yii2中的验证码是通过扩展的操作来实现的,叫做 yii\captcha\CaptchaAction 只需要将它绑定到actions中就可以直接访问,无需任何更改: ?...,在Yii2中,不需要自己去写验证,直接在表单模型的 rules 中调用 captcha 验证就可以了 ['verifyCode','captcha'], 数据分页 Yii2也提供了类似于TP的数据分页类
", //描述(description是必要属性) "keywords": ["framework", "laravel"], //用于搜索与筛选的与包相关的关键字keywords是非必须属性.../包的类型,默认为库library,composer原生支持4中类型:“library”将文件复制到vendor目录。..."dont-discover": [ ] } }, "scripts": { //表示composer允许在安装过程的各个部分执行脚本...": "yiisoft/yii2-app-basic", "description": "Yii 2 Basic Project Template", "keywords": ["yii2...", "license": "BSD-3-Clause", "support": { "issues": "https://github.com/yiisoft/yii2
1、Cookie Yii2的Cookie主要是通过yii\web\Request和yii\web\Response进行操作的 ,通过\Yii::$app->response->getCookies()...> PHP/Yii2操作Cookie,常见问题以及注意事项 设置Cookie PHP setcookie("name", "Larry", time()+3600); Yii2 $cookies = Yii...符号,会被解析成“_”,导致具有以上符号的key获取不到Cookie的bug B.区分Yii2中 Yii::$app->request->cookies 和 Yii::$app->response->cookies...C.Cookie的key区分大小写 Yii::$app->request->cookies 和 Yii::$app->response->cookies在yii里面是分开的,前者是客户端(浏览器cookie...::$app->request->cookies主要负责读取 Yii::$app->response->cookies主要负责创建 当然两者可以混用,但是根据业务需要, 取客户端cookie之前,在响应中应该写入或修改
1、Yii2所有的操作都是对象操作。所有的对象都继承Yii中的Object对象。TP中,有对象也有函数。TP中的各个对象没有明显的继承关系。各自为类,定义不同的属性以及方法。...2、Yii2架构组织明确,同一类的对象必定有一个父类,在父类中定义相同的方法。在TP中,同一类对象没有什么继承关系,有的完全没有任何关系,内部提供的一些方法也不同。...比如Controller类,在Yii中有yii/web/Controller,有yii/rest/Controller,同样是控制器,他们必定有一些相同的操作,所有相同的操作都会在yii/base/Controller...在TP5中,普通控制器提供一个tink\Controller对象,同时,框架也允许在应用中的控制器可以不继承think\Controller。...YII2中,数据model时跟数据表完全映射的。一个model对象就是一条数据记录。对象的属性数据就是记录中各字段的内容。TP5中,数据model时一数据表的操作对象。提供一些数据操作方法而已。
我们返回头再整体回顾下 YII2 框架,你会发现在 YII2 官方的默认模版中,View 层还是占有很大的比重。...在 YII2 社区中安装 YII2 版本的讨论中,经常有一个 View asset 扩展安装的难题,核心就是前端页面元素与后端服务的耦合的问题,以及版本依赖的冲突。...API 简单概括 “现在我们使用 YII2,就是在使用它构建 API 的能力。...更何况因为模块不一样,即使同一个数据表对象,相关的数据操作也会不一样。...总结 看看程序语言的发展脉络,以及前后端发展的变革,可以总结出两个词:演变和趋势。在应用程序开发中,前端这个职位是从后端细化和演变而来的,前后端分离和独立就是技术的趋势。
我们在使用YII2框架的过程中,对于框架有两种安装方式,一种是使用官网归档文件,一种是使用Compoer包管理工具。...本文讨论的问题集中在使用Compoer安装YII2框架及更新组件包,升级YII2主版本时遇到的一些问题。 ? 前置条件 首先使用Composer包工具的需要满足以下两个前提,不区分操作系统。...1 电脑需要安装Composer包管理工具,并且全局可直接使用 2 安装Composer Asset插件,Asset插件需要合适的版本。 两个条件在安装的同时,都必须注意合适的版本。...查阅网络很多资料, Asset插件相关的问题主要集中在【安装Composer Asset插件老是失败】,解决方案都是给出执行具体的命令,安装这个插件的关键在于 确定当时fxp/composer-asset-plugin...以上解决问题的路径是这样的,发现目前的YII2版本不支持PHP7及以上环境,于是使用Composer更新YII2框架版本,更新过程中一系列问题造成更新识别,依次定位到Asset插件问题并且更新对应的版本
在每一个Model当中,attributes和attributes label其实跟Yii1.1差不多,但让我特别值得拍手称快的是在Yii2中,除了rules()函数之外,还有scenarios()函数来增强...在Views还有一个值得注意的地方就是this变量,在Yii1.1中,this可以说就是链接Controller和Views的中介;而在Yii2中, 控制器(Controllers) 首先直接来看一下代码...,用过Yii1.1的同学应该都很熟悉 return $this->render('index'); } public function actionTest() { // 只在浏览器中打印 "test"...没错,Yii2中已充分开始使用PHP命名空间,当初在Yii1.1的时候一直听说Yii2会使用更高级的PHP特性来完全重写,果然啊,点个赞。...写在最后 正如你在这篇文章看到的一样,在Yii2中几乎所有的MVC组件变化都使得Yii2更好用了,我相信这会带给开发者更好的的开发体验,毕竟Yii2 中看到了一丝丝优雅的样子!
安装好YII2 后出现 例如以下图错误提示: 解决方法例如以下: 打开安装好的YII2项目文件夹(YII2安装方法參见 摘取天上星 的博文:http://blog.csdn.net/zqtsx/article.../details/39344913) 打开YII2项目文件夹里的 composer.json 文件 (例如以下图) 在composer.json 文件中加入 例如以下(extra括号中的部分)代码:...改动后的composer.json文件 大致例如以下(extra部分为我们加入的新增代码): { "name": "yiisoft/yii2-app-advanced", "description...的项目文件夹(非框架文件夹): 依次运行例如以下命令: composer global require “fxp/composer-asset-plugin:1.0....: 到这里 更新也就结束了, 再次打开浏览器输入 项目地址 http://127.0.0.2/frontend/web/。
作为一名软件工程师,我做过的最明智的投资就是学习 Linux。因为,在日常工作中,我们会经常与 Linux 系统打交道。...Tmux 是一款优秀的终端中的窗口和会话管理器。译者注:如果你想详细了解 Tmux,参见本篇文章。(文章地址:http://t.cn/RAQMOB1) 5.tree 以树状结构列出目录内容。...它拥有漂亮、多彩的命令行界面,以及一些实用的字母快捷键: \ - 增量进程过滤器; / - 搜索进程; , - 选择排序标准; k - 终止进程; u - 筛选某一特定用户进程; t - 显示/隐藏树形结构...2.chroot 这个命令的神奇之处在于,它可以帮助你在指定目录中打开新的 TTY 。那么,你就可以创建一个文件夹,在其中设置新的 Linux 系统,并随时切换到该“子系统”。...1.dialog 方便与用户交互的简易命令。例如,下面的命令就显示了一个漂亮的输入框: dialog --title "Oh hey" --inputbox "Howdy?"
Yii2 中的CSRF配置 Yii2 默认是启用CSRF令牌验证 配置在main.php中: 'components' => [ 'request' => [ /...在要取消的控制器中添加: public $enableCsrfValidation = false; 2....在配置中取消enableCookieValidation的验证 'components' => [ 'request' => [ // !!!...POST验证 当启用了csrf后, 所有表单POST提交的数据就会进行验证,在表单中添加CSRF有两种方法 1....手动添加_csrf 在form表单中手动添加隐藏表单,也适用于ajax的手动添加_csrf <input type="hidden" value="<?
领取专属 10元无门槛券
手把手带您无忧上云