管道链应从原始值开始

Mat*_*ski 3 elixir ecto phoenix-framework

我的Phoenix应用程序控制器中有以下操作:

  def index(conn, params) do
    studios =
      if params["search"] do
        Studio.search(Studio, params["search"])
      else
        Studio
      end
      |> Repo.all
      |> Repo.preload(:address)

    render conn, studios: studios
  end
Run Code Online (Sandbox Code Playgroud)

当我运行时,mix credo它返回以下警告:

? [F] ? Pipe chain should start with a raw value.
?       lib/tattoo_backend/web/controllers/api/v1/studio_controller.ex:21 #(TattooBackend.Web.API.V1.StudioController.index)
Run Code Online (Sandbox Code Playgroud)

我试图重构它,但是我没有找到能让credo满意的解决方案。任何想法如何解决这个问题?

NoD*_*ame 5

queryable = 
  if params["search"] do
    Studio.search(Studio, params["search"])
  else
    Studio
  end

queryable
|> Repo.all()
|> Repo.preload(:address)
Run Code Online (Sandbox Code Playgroud)