使用Devise gem生成用户模型.
尝试添加"用户名"属性.
随后的官方文档,现在我的ApplicationController看起来像这样:
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_action :configure_permitted_parameters, if: :devise_controller?
before_action :authenticate_user!
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:account_update, keys: [:username])
devise_parameter_sanitizer.permit(:sign_in, keys: [:username])
devise_parameter_sanitizer.permit(:sign_up, keys: [:username])
end
end
Run Code Online (Sandbox Code Playgroud)
当我尝试转到帐户更新页面时,我收到以下错误:
NoMethodError in Devise::RegistrationsController#edit
private method `permit' called for #Devise::ParameterSanitizer:0x007f13396cf180>
Run Code Online (Sandbox Code Playgroud)
这里有什么不对的?
我已将datePeriodPicker应用于Yii2 gridview过滤器行中的输入.它工作但插入值后不适用.您必须再次单击输入并按Enter键.其他领域工作正常.有什么方法可以让它像改变后的其他输入一样适用吗?
这是我使用的脚本:
var
dateInput = $("[name='RequestSearch[request_date]']" ),
configObject = {
autoClose: true,
language:'ru',
separator: '/',
showShortcuts : true,
shortcuts: {
'next-days': [3,5,7],
'next': ['week','month','year']
},
startOfWeek: 'monday',
};
dateInput.dateRangePicker(configObject);
Run Code Online (Sandbox Code Playgroud)
编辑1
这是RequestSearch.php.dateRangePicker会插入类似"2015-01-05/2015-05-09"的值,因此我必须创建一个将值分为$ start_date和$ end_date的处理程序.
public function rules()
{
return [
[['id', 'KP_id', 'minimal_payment', 'mover_company_id', 'manager_id', 'workers_number', 'workhours', 'payment_additional', 'payment_car', 'payment_sum'], 'integer'],
[['request_date', 'payment_type', 'request', 'request_time', 'quantity', 'request_type', 'address', 'status', 'customer_id', 'comment',], 'safe'],
];
}
$query->andFilterWhere([
'id' => $this->id,
...
]);
if ( ! is_null($this->request_date) && strpos($this->request_date, '/') !== false ) …Run Code Online (Sandbox Code Playgroud) 我不知道如何用文字解释我想要的东西,所以我附上一张图片来解释它:

我应该用SQL编写哪个命令来执行此操作?
我不知道stackexchange还想让我发一个问题,所以我添加了这句话.