我看到jQuery具有jQuery-migrate脚本来安全升级jQuery。他们有两个jQuery迁移存储库:
是否需要先迁移到1.9,然后再迁移到3.x,还是可以仅将第一个脚本包含在我的网站中,然后直接迁移到3.x?使用1.9中删除的API时,3.x迁移脚本是否不会通知?
我有jQuery选择以插入形式命名为centro medicos,我可以选择所有数据,选择一些数据.如果我点击这里选择全部是结果:
假设我只选择了3个项目,然后保存.现在我想编辑.加载编辑页面时,我想要加载我选择的3个项目:
如果我点击全选(Selectionar待办事项),则会显示其余项目.
1-控制器
public function edit_form()
{
$edit_id= $this->uri->segment(3);
$data['ITEM_EDIT'] = $this->model->get_title_by_id($edit_id);
$data['ITEM_ALL']= $this->model->get_all_title();
$this->load->view('view_edit_form', $data);
}
Run Code Online (Sandbox Code Playgroud)
2-视图
<select class="chosen-select" multiple name="item[]">
<?php
foreach($ITEM_ALL as $item_all) {
foreach($ITEM_EDIT as $item_edit) {
if($title_edit->title== $title_all->title)
{
echo '<option value="'.$item_all->title.'" class="'.$item_all->id.'" selected>'.$item_all->title.'</option>';
}
else
{
echo '<option value="'.$item_all->title.'" class="'.$item_all->id.'" >'.$item_all->title.'</option>';
}
}
}
?>
</select>
Run Code Online (Sandbox Code Playgroud)
3- jQuery
$(".chosen-select").chosen({
no_results_text: "Oops, nothing found : ",
})
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
你好StackOverflow家族.这是我的第一个问题,我希望得到帮助.
我是laravel框架的新手,在我的项目中使用的是5.2版本.我试图使用post方法从我的ajax函数传递数据到特定的控制器方法,但没有数据传递给控制器.
我按照这个论坛中的步骤https://laracasts.com/discuss/channels/laravel/process-data-in-controller-using-ajax-in-laravel但无法使其工作.这是我到目前为止所做的.
我的JavaScript(post_script.js):
$.ajax({
method: 'POST',
url: './home',
data: {
userID: 76,
userName: 'Jimmy'
},
});
Run Code Online (Sandbox Code Playgroud)
请注意,此文件保存在assets/jslaravel结构的目录中.这是我在路径文件(routes.php)中的内容:
Route::get('/', "MyController@home");
Route::get('home', "MyController@home");
Run Code Online (Sandbox Code Playgroud)
这是我在MyController.php文件中的功能:
function home(Request $request) {
$userID = $request['userID'];
$userName = $request['userName'];
return view('home', [
'userID'=> $userID,
'userName' => $userName
]);
}
Run Code Online (Sandbox Code Playgroud)
在我看来,我试图像这样访问它:
<p>User ID: {{$userID}}</p>
<p>User Name: {{$username}}</p>
Run Code Online (Sandbox Code Playgroud)
什么都没显示!请问我做错了什么?我需要你的帮助.如果我的问题不合适,请原谅我,但我希望你明白我的意思.谢谢
Nginx 的 CPU 可扩展性方法基于创建几乎独立的进程数量,每个进程拥有一个事件队列,然后使用 SO_REUSEPORT 将传入连接、IRQ、NIC 数据包相对均匀地分布在所有内核上。
与只创建一个 Linux 进程然后创建仍然等于 CPU 数量和每个线程中的每个线程事件队列的线程数组相比,它是否会带来更好的可扩展性(更少的内核数据共享 = 更少的锁)?
这是 Nginx 扩展到大约 32 个 CPU 的示例。禁用 HT 和 36 个真实内核的总数可能是造成这种情况的主要原因,以及由于过热导致相对 NIC 饱和甚至内核 GHz 下降:
https://www.nginx.com/blog/testing-the-performance-of-nginx-and-nginx-plus-web-servers/
另外:https : //dzone.com/articles/inside-nginx-how-we-designed
我正在尝试使用gspread Python包从命令行将CSV数据导入Google表格.
使用本指南,我完成了所有工作,并且能够读取和写入单元格.
但是,逐个更新单元格太慢,所以我现在尝试使用该import_csv()方法. 文档说:
import_csv(file_id,data)将数据导入电子表格的第一页.
参数:data - CSV数据字符串.
file_id这里没有描述,我无法弄清楚应该是什么.一些其他方法也使用a file_id和它们被描述为:
file_id - 电子表格ID(也称为文件ID).
我不确定我在哪里找到电子表格ID,无论我尝试什么,我都会收到权限错误.由于我能够使用update_cell(),如上所述,我认为我的权限工作正常,但我使用错了file_id.
这是简化的代码:
import gspread
from oauth2client.service_account import ServiceAccountCredentials
scope = ['https://spreadsheets.google.com/feeds']
creds = ServiceAccountCredentials.from_json_keyfile_name('client_secret.json', scope)
client = gspread.authorize(creds)
sheet = client.open("SheetTitle").sheet1
# This works fine, so I think permissions etc are all set up correctly
sheet.update_cell(1, 1, 'Foo')
# Now try importing CSV data from a string
csv="""2016, 2017
1,2
3,4
"""
# Does …Run Code Online (Sandbox Code Playgroud) 我正在使用Laravel 5.2应用程序。在开发和暂存环境中,我想使用docs中描述的“通用到”邮件配置选项。开发环境的通用性可确保所有电子邮件都发送至该地址,而不发送给真实的客户/客户/任何人。
我无法弄清楚如何在生产中以不同的方式指定此名称。在生产中应该没有通用的-电子邮件应该发送到真实地址。
使用不同env()值的标准方法似乎不起作用。例如:
config / mail.php:
'to' => [
'address' => env('UNIVERSAL_TO', false)
],
Run Code Online (Sandbox Code Playgroud)
开发.env:
UNIVERSAL_TO=my-testing-address@somewhere.com
Run Code Online (Sandbox Code Playgroud)
这可以正常工作-所有电子邮件都UNIVERSAL_TO按预期发送到指定的电子邮件。但是,如果我将其更改为生产中的需求,例如:
生产.env
UNIVERSAL_TO=
Run Code Online (Sandbox Code Playgroud)
(或='',或=false,或者只是完全省略了此内容),则发送任何邮件均失败,并带有(在中storage/laravel.log):
local.ERROR:消息为“给定[]的邮箱中的地址不符合RFC 2822,3.6.2”的异常'Swift_RfcComplianceException'。在路径/到/供应商/swiftmailer/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php:348中
config/mail.php 只是返回一个数组,所以我想我可以改为将其设置为变量,然后根据环境将“ to”附加到它,如下所示:
$return = [ ... normal mail config array ... ];
if (!\App::environment('production')) {
$return['to'] => [
'address' => 'my-testing-address@somewhere.com'
];
}
return $return;
Run Code Online (Sandbox Code Playgroud)
但这似乎有点...骇人听闻。有没有更好的办法?
我正在尝试通过axios向laravel发送删除请求,如下所示:
axios.delete('api/users/' + this.checkedNames)
.then((response) => {
console.log(response)
}, (error) => {
// error callback
})
Run Code Online (Sandbox Code Playgroud)
现在从axios文档中我读到,对于删除请求,我们应该使用configObject,以便可以将上述内容重写为:
axios.delete('api/users/', {params: {ids:
this.checkedNames})
.then((response) => {
console.log(response)
}, (error) => {
// error callback
})
Run Code Online (Sandbox Code Playgroud)
然后我Route::resource('users', 'UsersController');在api.php中,因此删除的默认路由为:
DELETE| api/users/{user}| users.destroy
Run Code Online (Sandbox Code Playgroud)
控制器的方法是:
|App\Http\Controllers\UsersController@destroy
Run Code Online (Sandbox Code Playgroud)
当我传递单个ID(例如api / users / 12)时,我能够按预期删除用户,它可以正确删除,但是当我尝试传递上述数组时,事情就变得复杂了。
如果我按照axios文档进行尝试,axios.delete('api/users/', {params: {id: this.checkedNames}})它似乎是在发送此消息,http://lorillacrud.dev/api/users?id[]=21&id[]=20但我得到的是405方法不允许。
如果我尝试axios.delete('api/users/' + this.checkedNames ),我得到http://lorillacrud.dev/api/users/20,21我的破坏方法,我可以抢IDS和删除等等,但我想知道这是否是做了正确的方法是什么?
我似乎使它工作了,但是我不明白,因此仍然感谢任何帮助以使我了解我实际上正在做什么!
因此,如果更改为:
axios.delete('api/users/destroy', {params: {'id': this.checkedNames})
Run Code Online (Sandbox Code Playgroud)
在我的销毁方法中:
if ($request->id) {
foreach ($request->id as $id) {
User::destroy($id); …Run Code Online (Sandbox Code Playgroud) 我正在使用Laravel 5.6和Laravel Dusk 3.0.9。
黄昏非常方便,但是当在具有某些Javascript功能的页面上测试失败时,很难找出问题所在。Dusk会生成一个屏幕截图,这很有帮助,但是我真正需要的是查看Javascript控制台的输出。
显然,这是可能的-Dusk tests/Browser/console在安装过程中会创建一个目录,并且此PR建议JS控制台输出已记录,或者至少是可记录的。
尽管没有文档(我可以找到)有关如何实际执行操作。 浏览该PR中的差异时,我看到了一个新方法logConsole()(后来storeConsoleLog()在注释中重命名为@Jonas指出),但是我似乎无法使其执行任何操作,例如:
$browser->visit('/somewhere')
->select('#foo', '2')
->value('#date', '2018-07-29')
->storeConsoleLog('bar')
->assertEnabled('button[type=submit]');
Run Code Online (Sandbox Code Playgroud)
该测试失败,并生成了一个漂亮的屏幕截图,但是没有任何日志文件的迹象。我尝试过移动->storeConsoleLog('bar')链条中的位置,例如第一个或最后一个,并在链条之前或之后作为单独的一行:
$browser->visit('/somewhere')
->...full chain here;
$browser->storeConsoleLog('bar');
Run Code Online (Sandbox Code Playgroud)
但是它们都没有任何区别。我的JS有一系列,console.log()当在浏览器中测试自己时会用到这些,它们会确切告诉我出了什么问题。我期望此功能记录这些消息。
我是否误解了公关,这有可能吗?如果是这样,怎么办?
通过调试中的storeConsoleLog()方法,vendor/laravel/dusk/src/Browser.php我可以看到该方法已正确调用,但是没有控制台内容可记录。如果我手动重复测试在Chrome中执行的步骤,则会有行写入Chrome devtools控制台,实际上3是在页面加载时写入的。为什么黄昏看不到那些?
我发现,如果'--headless'从中的driver()方法中删除DuskTestCase,则在测试期间将显示浏览器。然后,您可以显示该浏览器的开发工具,并在测试运行时实时观看控制台输出。太快了,无法真正发挥作用,如果出现错误,浏览器将关闭,并且无论如何您都会丢失控制台上的所有内容(除非有办法让浏览器在发生故障时保持打开状态?),但请在此处添加此内容,以防万一。对某人有用!
我正在CodeIgniter 3中建立博客。我想在用户通过身份验证但redirect()无法正常工作时从一个控制器重定向到另一个控制器。
我已经尝试了Stack Overflow中给出的所有解决方案,但是没有人适合我。检查我的代码,并告诉我问题出在哪里。提前致谢。
MY_Controller是我从扩展的核心控制器CI_Controller。
class Login_c extends MY_controller {
public function index() {
$this->load->helper('form');
$this->load->view('public/admin_login_v');
}
public function admin_login() {
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'User name', 'required|trim|alpha');
$this->form_validation->set_rules('password', 'Password' , 'required');
if($this->form_validation->run()) {
$username = $this->input->post('username');
$password = $this->input->post('password');
$this->load->model('login_model');
$login_id = $this->login_model->login_valid($username,$password);
if( $login_id ){
$this->session->set_userdata('user_id', $login_id);
return redirect('admin_c/dashboard');
} else {
echo "user not authenticated";
}
} else {
$this->load->view('public/admin_login_v');
// echo validation_errors();
}
}
}
Run Code Online (Sandbox Code Playgroud)
<?php
// ob_start();
class Admin_c extends …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Javascript 计算两个 EPOCH 时间戳之间的差异(以秒为单位)。
我有两个时间戳:
START: 1565628094441
END: 1565714527812
Run Code Online (Sandbox Code Playgroud)
两个时间戳都是使用以下方法获得的:
var time = new Date().getTime().toString();
Run Code Online (Sandbox Code Playgroud)
我想确定两个时间戳之间的差异(以秒为单位)。我知道 Javascript 以毫秒为单位返回纪元,但我仍然无法找到一种方法将它们正确地转换为秒。
这是我尝试过的:
var differenceSec = (END- START)/1000;
// This gives us 86433.371 Seconds (~1440 minutes).
Run Code Online (Sandbox Code Playgroud)
使用 Epoch Converter(https://www.epochconverter.com/#tools)我知道真正的差异应该在 30 秒左右。我在这里做错了什么?
php ×4
laravel ×3
javascript ×2
jquery ×2
laravel-5.2 ×2
ajax ×1
api ×1
axios ×1
codeigniter ×1
date ×1
difference ×1
email ×1
epoch ×1
gspread ×1
laravel-5.6 ×1
laravel-dusk ×1
linux ×1
linux-kernel ×1
nginx ×1
python ×1
scalability ×1
time ×1