问题标签 [phoenix-framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 从 elixir ecto 关联创建 json
我想从 phoenix 中的 ecto 关联生成 JSON。
这是我的协会:
和:
当我在没有关联的情况下生成 json 时,结果是这样的:
json看起来像这样
但与协会的结果是这样的
使用上述输出,我无法创建正确的 json 输出。我希望 json 看起来像这样
任何帮助,将不胜感激。
elixir - Phoenix Web 框架中的 KeyError
尝试向客户端提供页面时,客户端出现以下错误:
(KeyError) key :id not found in: %Phtest.Jobs{"@class": "Job", "@rid": "#13:0", "@type": "d", "@version": 1、描述:“öoisajdf sadöflkjasdfö lkj”,job_status:“Open”,job_type:“Developer”,title:“Foo”} Stacktrace
它之前工作过,但现在我已经修改了我的模型,有些切换job.id
为job."@rid"
. 我的模板如下所示:
elixir - 如何将表单中的大文件上传到 Phoenix?
我有一个带有文件字段的 HTML 表单,用于将文件上传到/file
我的 Phoenix 应用程序中的路由。
我从命令行模仿这种行为以curl -v -F "file=@MyTestFile" http://localhost:4000/file/
进行更快的测试。
当我使用一个大文件(转折点似乎在 7.7MB 左右)时,我从 Plug 中得到以下异常:
18:40:38.897 [错误] 进程 <0.420.0> 出错,退出值:{[{reason,#{' exception '=>true,' struct '=>'Elixir.Plug.Parsers.RequestTooLargeError',message =>nil}},{mfa,{'Elixir.Plug.Adapters.Cowboy.Handler',init,3}},{stacktrace,[{'Elixir.Plug.Parsers',reduce,6,[{file,”库/插件...
是否有允许上传更大文件的解决方法?
Plug 中似乎有一个:length
option 关键字,但我如何从 Phoenix 设置它?选择这个特定值的原因是8_000_000
什么?
elixir - 无法在 Windows 上生成 Phoenix 应用程序
我在 Windows8 上使用 Elixir 的 Phoenix 框架时遇到了严重的问题。在解决了大多数特定于平台的错误之后,一个错误告诉我找不到 rebar 并且没有编译牧场。我什至已经将钢筋放在我的环境路径中,但它仍然在抱怨。总而言之,编译ranch应该怎么做,下面有个报错的例子。
elixir - 在 Elixir 中部署时更改后端/模块?
如何实现一个可替换的后端(或基本上任何部分或模块),以便可以在 Elixir 的配置/部署时替换它?
我的具体情况是一个简单的网络应用程序(在这种情况下使用 Phoenix,但我猜这个问题也适用于其他情况)我有一个非常简单的后端Agent
用于保持状态,但我认为未来需要能够或多或少地动态切换后端。
我猜 Ecto 和 Logger 都在某种程度上做到了这一点,但对于 Elixir 的新手来说,很难知道去哪里找。
elixir - 我可以在函数参数内的 Conn 中模式匹配会话值吗?
我有一个:identifiedas
用户可能存在或不存在的会话密钥。我想要这样,如果您在此密钥存在时进入登录页面,服务器会将您重定向到主页。
我可以使用 anif
来解决这个问题,但如果可能的话,与在另一个函数子句中使用模式相比,这似乎是个坏主意。
最好我希望它是:
elixir - Phoenix 无法启动 - 缺少 AppName.Endpoint.start_link
Pheonix 变化如此频繁,以至于我不确定我所做的是否正确。
我正在尝试遵循一些教程,并且在您完成编译后,它们都具有“mix phoenix.start”命令,并且应该启动服务器。(在 Github 的问题页面上有一些讨论,他们将用 mix phoenix.server 命令替换它,您必须手动执行某些操作,而不是真正遵循它。无论如何,这是在开发版本 v0.8.0- dev. 我正在使用最新的稳定版本 0.7.2)
我在尝试发出“mix phoenix.start”命令尝试启动服务器时遇到错误
(应用程序名称:PhoenixCrud):
文档有更新的 phoenix.server 命令,但我也尝试过,并且该组合表示找不到任务。
无论如何,app_name /lib/ app_name /endpoint.ex 似乎缺少 start_link 函数。我应该提供那个吗?我现在不知道该放什么,因为我只是在试用 Phoenix Web 框架并且对它一无所知(因此有教程。)
那么,我是否应该提供 start_link 功能,如果是这样,可以给我一些暂时存根以尝试遵循一些教程。否则是bug吗?
websocket - Phoenix 框架通道 - (ErlangError) erlang 错误:[原因::function_clause,mfa:{Phoenix.Endpoint.CowboyHandler
我正在尝试 Phoenix 并想制作一个简单的 websocket 聊天应用程序,但我遇到了这个错误:
我正在做的是创建一个可以成功加入的频道,但是在尝试发送事件时出现错误:(ErlangError) erlang error: [reason: :function_clause, mfa: {Phoenix.Endpoint.CowboyHandler ...
我的代码有一个要点和完整的错误:https ://gist.github.com/jurre/28796f8c4ad9e4122f18
我正在使用 Elixir 1.0.2 和 Phoenix 框架 v0.7.2。我对长生不老药和凤凰都很陌生,这可能很明显。
elixir - Query Repo Using a String
I am using Phoenix with Ecto to query a database for a single record by the primary key. All of the documentation/examples show the usage as in a Phoenix Controller:
However, all params in Phoenix are strings, so this throws a ** (Ecto.InvalidModel) model App.MyModel failed validation when , field id had type string but type integer was expected
. I have been working around this in my controllers by doing something like:
The problem is I haven't seen anyone else doing this sort of type conversion. I'm worried I don't have Phoenix or Ecto set up correctly. Is there a Phoenix/Ecto convention I am missing that would automatically coerce my id argument for Repo.get/2
to an int?
elixir - 修复协议 Ecto.Queryable 未实现错误
我是使用 Ecto 和 Elixir 的新手,遇到了一个我无法解释的错误。我的代码看起来就像 Ecto README 中的示例。
这是我的 Ecto 模型和查询模块
这是我如何调用查询函数
这一切似乎与 Ecto 文档完全一致,我找不到任何其他说法。但我收到以下错误。