Javascript 在yii2中,如何将外部csv文件引用到java脚本中?
因为它是yii2,所以我不能引用外部文件。 视图中的索引文件文件夹代码为:Javascript 在yii2中,如何将外部csv文件引用到java脚本中?,javascript,charts,yii2,Javascript,Charts,Yii2,因为它是yii2,所以我不能引用外部文件。 视图中的索引文件文件夹代码为: <script type="text/javascript"> g2 = new Dygraph( document.getElementById("graphdiv2"), "temperatures.csv", // path to CSV file {} // options ); </script> g2=新动态图( document.
<script type="text/javascript">
g2 = new Dygraph(
document.getElementById("graphdiv2"),
"temperatures.csv", // path to CSV file
{} // options
);
</script>
g2=新动态图(
document.getElementById(“graphdiv2”),
“temperatures.csv”,//csv文件的路径
{}//选项
);
我需要在同一个视图文件夹中调用我的temperatures.csv,我不知道如何给出路径,是否有帮助?在Yi2中无法直接访问带有视图模板的文件夹,因此无法从javascript引用那里的csv文件 最简单的处理方法是将csv文件放入
web
文件夹中
例如,您可以将csv文件放入web/data
文件夹。要获取文件的url,可以使用url帮助器
\yii\helpers\Url::to('@web/data/temperatures.csv');
最好使用url管理器来获取url,因为它将为您处理基本url,这在不同的环境中可能会有所不同。例如,最终url在生产中可能是/data/temperatures.csv
,但在开发中可能是/web/data/temperatures.csv
另一个选项是执行将发送文件的操作
在这种情况下,您可以将temperatures.csv
留在原来的位置。您需要在控制器中执行新操作,例如getTemperatures
公共函数actionGetTemperatures()
{
$file=\Yii::getAlias('@app/views/controller/temperatures.csv');
return\Yii::$app->response->sendFile($file);
}
然后您将在javascript中使用此操作的url
\yii\helpers\Url::to(['controller/get temperatures']);
此解决方案的优点是,它允许您控制是否允许用户访问该文件。这是否回答了您的问题?不,这是一个模型视图和控制器方法,因此我们需要不同的定义,这对于yii2来说并不常见。我们需要一些不同的东西来引用路径。@paviTHRAN您可以尝试在javascript@indrashastri它也不起作用。pavi THARAN请检查您是否需要url或目录路径中的文件路径,如果url然后创建文件的url并在注释中提供url,请尝试
dirname(dirname(uu DIR_uu))。/path/tempratures.csv'
它也不起作用,csv文件中的值未正确格式化为javascript变量