我刚被一家公司聘为初级python开发人员(我是唯一的python开发人员)。 在这里,他们希望将繁重的任务(批量邮件,Excel导入,PDF导出)从PHP服务器传递到Django服务器( celery ),以减轻工作量。 在我的计算机上,我设法在本地(分别)运行它们。
我的问题是从PHP服务器在django服务器上传递数据或触发功能的最佳方法是什么
例如,考虑以下代码: some_shit.php
public function actionExportPdf()
{
$mPDF = Yii::app()->ePdf->mpdf();
$model = new Gulfuniversityapplication('search');
$dbcriteria = Yii::app()->session['criteria'];
$model->setDbCriteria($dbcriteria);
$row = Yii::app()->db->createCommand("select field_data from modules where table_name='".$model->tableName()."'")->queryRow();
$filteredData = CJSON::decode($row['field_data']);
//$filteredData = $data[$model->tableName()];
$stylesheet = file_get_contents(getcwd().'/path/to/core/assets/css/social.css');
$mPDF->WriteHTML($stylesheet, 1);
$mPDF->WriteHTML($this->renderPartial('_exportPdf',array(
'model' => $model,
'data' => $filteredData,
), true));
$mPDF->Output();
}
这是他们的PHP,我不知道其中包含什么。
这是我的Django celery代码 task.py
@shared_task
def export_task(arg1,arg2):
my_cursor = my_db.cursor()
my_cursor.execute("SELECT arg1 FROM arg2")
out =[]
for i in my_cursor.fetchall():
out.append(i)
my_cursor.execute("DESCRIBE arg2")
column = []
for i in my_cursor.fetchall():
column.append(i[0])
df = pd.DataFrame(data=out,columns=column)
writer = pd.ExcelWriter('output.xlsx')
df.to_excel(writer,'Sheet1')
writer.save()
这是我在这里的第一个问题,谢谢。
我一直在考虑从PHP调用POST API
如果这是针对yii框架的唯一解决方案