Tôi đang tạo một trang web đơn giản sử dụng yesod.Làm thế nào để sử dụng UTCTime trong yesod mà không có lỗi mô-đun ẩn?
Nó đã hoạt động cho đến khi tôi thêm một trường kiểu UTCTime vào mô hình cơ sở dữ liệu của mình.
tôi ban đầu có một lỗi gợi ý tôi thêm "thời gian 1.2.0.3" đến file cabal tôi, vì vậy tôi đã làm và bây giờ tôi nhận được nhiều những lỗi tương tự mà không có sự gợi ý:
Model.hs:6:8:
Could not find module `Data.Time.Clock.UTC':
it is a hidden module in the package `time-1.2.0.3'
Use -v to see a list of the files searched for.
Các GHC Command- dòng được tạo bởi cabal là:
"C:\Program Files (x86)\Haskell Platform\2011.2.0.1\bin\ghc.exe" --make -o dist\build\lpi\lpi.exe -hide-all-packages -fbuilding-cabal-package -package-conf dist\package.conf.inplace -i -idist\build\lpi\lpi-tmp -i. -idist\build\autogen -Idist\build\autogen -Idist\build\lpi\lpi-tmp -optP-DPRODUCTION -optP-include -optPdist\build\autogen\cabal_macros.h -odir dist\build\lpi\lpi-tmp -hidir dist\build\lpi\lpi-tmp -stubdir dist\build\lpi\lpi-tmp -package-id base-4.3.1.0-f520cd232cc386346843c4a12b63f44b -package-id bytestring-0.9.1.10-cd85f14e02463c02ba4c77d7adcdb54f -package-id clientsession-0.7.3.6-70ebb09e2b4c14267f1463cef3c932ea -package-id hamlet-0.10.5-1bacb5fe791e5cc9e28c8cf9f07c06e2 -package-id hjsmin-0.0.14-a1d374204877c150b681896452f205f4 -package-id mime-mail-0.4.1.0-05d76f10c6f18f7178113a6d760f371a -package-id monad-control-0.3.1-092d8fe82727181557b850f795f847bc -package-id persistent-0.6.4.3-6e59b956a206ce4f4a9296367507c2b8 -package-id persistent-sqlite-0.6.2.1-d32462e51baa09b53b6fd83dae922fc7 -package-id shakespeare-css-0.10.4-f8e17e4528d3a37edee74b13441720de -package-id shakespeare-js-0.10.3-dfec6b68f60671528332da06c9799659 -package-id shakespeare-text-0.10.3-a0ae9b85c3588ff2572080a6d1cdd4c3 -package-id template-haskell-2.5.0.0-7d9b1443ac5ab69e5ed705a487990deb -package-id text-0.11.1.9-a75bb47eca7b1c98d59b7697de77ca4d -package-id time-1.2.0.3-74ef6ac31cee9aec02b036978af002d2 -package-id yesod-0.9.3.4-6339564f13b46afd787d750cf9daa3bf -package-id yesod-auth-0.7.8-94a2849a33bb6f6d4c0e15615ef22bea -package-id yesod-core-0.9.3.6-a70073f17a6f050226a91a97c305403d -package-id yesod-default-0.4.1-1f30d8d893952d0661328b681d9ce291 -package-id yesod-form-0.3.4-a84ba844c230f9847bca7c0056375179 -package-id yesod-static-0.3.2-c82f332e85e2c9ba709375b8a14040a1 -O -Wall -threaded -O2 -XHaskell98 -XTemplateHaskell -XQuasiQuotes -XOverloadedStrings -XNoImplicitPrelude -XCPP -XMultiParamTypeClasses -XTypeFamilies -XGADTs -XGeneralizedNewtypeDeriving -XFlexibleContexts .\main.hs
vì vậy thời gian-1.0.2.3 chắc chắn đang được tham chiếu.
Tất cả các gói đã được tải xuống trong 24 giờ qua để chúng được cập nhật khá nhiều.
Tôi làm cách nào để có thể ẩn Data.Time.Clock.UTC?
Bạn có thể hiển thị tệp '.cabal' để minh họa chính xác cách bạn thêm phụ thuộc không? – dflemstr
'Data.Time.Clock.UTC' không được hiển thị bởi gói' time', do đó bạn không thể truy cập nó từ bên ngoài. Bạn không thể trưng ra các mô-đun ẩn từ một gói, do đó, cách duy nhất, nhưng không được khuyến nghị¹ sẽ là cài đặt lại 'time' với một tệp' .cabal' đã thay đổi để hiển thị mô-đun. ¹Nếu bạn làm điều đó, mã của bạn sẽ không hoạt động cho bất kỳ ai khác, bởi vì chúng vẫn bị ẩn. –
Tái xuất 'Data.Time.Clock'' Data.Time.Clock.UTC' (bị ẩn). Bạn đang sử dụng câu lệnh nhập nào trong Model.hs - hiện dữ liệu nhập 'Data.Time.Clock' có hoạt động không? –