問題タブ [sonata-media-bundle]
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.
symfony - ヘルパー「sonata_media」が定義されていません
私は SonataMediaBundle を使用しており、サイトの指示に従ってインストール/構成されています https://sonata-project.org/bundles/media/2-2/doc/index.html
メディア ファイルを保存して別のエンティティ (ManyToOne) にリンクすることはできますが、次のコードを使用して画像パスをレンダリングしようとすると:
それは私にエラーを与えます:
ヘルパー「sonata_media」が定義されていません。
どうすればいいのかわからない。誰でもこれについて私を助けてくれますか?
ありがとう。
編集: テンプレート エンジンとして PHP を使用しています。
php - Sonata Media - カスタムダウンロード戦略
「ドキュメント」という名前のエンティティがあり、ソナタメディアを使用してファイル管理を処理しています。したがって、管理者は新しいドキュメントを追加してファイルを添付できます。このドキュメントはユーザーに割り当てられます。
私の問題は、ユーザーが「保護されたURL」を介して割り当てられたファイルをダウンロードできるようにしたいです(ダウンロードURLの末尾の番号を変更すると、割り当てられたファイルをダウンロードできるためです)他のユーザーに)
Sonata Media のドキュメントによると、ダウンロード戦略とサービスを作成する必要があります。私はそれをしました、私はそれを呼びました:PrivateDownloadStrategy.php(そしてサービスを作りました)管理者がすべてのファイルをダウンロードできるようにしたいので、このファイルはRolesDownloadStrategy.phpに基づいている必要がありますが、ユーザーがダウンロードできるようにする方法それらに割り当てられているファイル?
これは私の実際の PrivateDownloadStrategy.php です (rolesDownloadStrategy.php からのコピー)
とサービス:
nb : sonata media doc :リンク sonata rolesDownloadStrategy :リンク
symfony - Sonata Media Bundle の多くの Medias for One 演習
Sonata メディア バンドルでこの奇妙な問題に直面しています。
基本的に、私は多くの写真を持つことができる演習を持っています.
Exercice (フランス語) の私のマッピングは次のとおりです。
次に、Application/Sonara/MediaBundle/Entity/Media.php に移動し、フィールド $exercice を追加します。
奇妙なことが起こります:
- 実行すると:
php app/console doctrine:generate:entities Application\Sonata\MediaBundle:Media
Media エンティティ内に Exercice のセッターまたはゲッターが表示されません。- プロファイラーで次のエラーが発生します。
アソシエーション Acme\AcmeBundle\Entity\Exercice#medias は、存在しない所有側フィールド Application\Sonata\MediaBundle\Entity\Media#exercice を参照しています。
config の関連部分:
orm: auto_generate_proxy_classes: "%kernel.debug%" auto_mapping: true mappings: ApplicationSonataMediaBundle: ~ SonataMediaBundle: ~
私は何を間違っていますか?
ありがとう
symfony - 定期的なエラー: zend_mm_heap が壊れています
説明: API を使用してファイルを追加すると、/var/log/httpd/error_log: zend_mm_heap が壊れているというエラーでサーバーが定期的にクラッシュします。これは時々発生し、それ自体が正常に機能し始めます。つまり、ファイルは正常にロードされ、その後ロードされなくなります。現時点では、もう一方は正常にロードできますが。
API /api/providers/sonata.media.provider.file/media を使用します
ファイルシステムのプロバイダー: sonata.media.filesystem.ftp
開発環境:dev/prod問わず
作曲:
- sonata-project/media-bundle: "2.3.x-dev"
- knplabs/ゴーフレット: >=0.1.4
Apache+mod_php:
- httpd-2.2.15-47.el6.centos.x86_64
- httpd-itk-2.2.22-7.el6.x86_64
- php55w-5.5.30-2.w6.x86_64
他の:
- zend.enable_gc=オフ
- opcache.fast_shutdown = オフ
- USE_ZEND_ALLOC = 0
問題: https://github.com/sonata-project/SonataMediaBundle/issues/866
php - symfonyでソナタメディアバンドルのデフォルトのアップロードパスを上書きするには?
次の問題があります。メディア アップロードに Sonata Media バンドルを使用して Symfony 2 アプリケーションで作業しています。アプリを Bluehost でホストしています。私の質問は、sonata メディアでメディア アップロードのデフォルト パスをオーバーライドするにはどうすればよいかということです。デフォルトの Web ディレクトリではなく "public_html" ディレクトリにアップロードする必要があるため、どうもありがとうございます。
php - SonataMediaBundle のパブリックおよびプライベート メディアが異なるフォルダー (Web およびプライベート) にアップロードされた
私は SonataMediaBundle を使用しており、今までweb
Symfony のフォルダーにファイルを公開してアップロードしていました。ここに私の設定ファイルの一部があります:
そして、私parameters.yml
は持ってい cdn_server_path: /uploads/media/
ます。
これにより、ファイルが にアップロードされますweb/uploads/media/contextname/0001/01/***
。
これらのファイルは public フォルダーにあるため、誰でも見ることができます。このフォルダを のどこかで変更できることはわかっていますapp/Resources/
が、そうするとすべてのファイルが非公開になってしまい、望ましくありません。プライベートとは、どういうわけか、コントローラーによって提供される必要があることを意味します。
一部のファイルを公開し、他のファイルを非公開にするにはどうすればよいですか? 特定のコンテキストでファイルを別のコンテキストとは異なる方法でアップロードする方法はありますか? それとも他の方法ですか?
また、ファイルを app/Resources フォルダーにアップロードすると、URL がhttp://website.com/app/Resources/media/profile_pics/0001/01/85e05ab9685b1745af4e64ff98ef91eed6e4ccdf.jpegになるためプレビューできません。 Symfony が持っている唯一の公開ファイルである web フォルダーにはありません。これはどのように行うことができますか?
編集:アップロードの部分はなんとかできましたが(以下の回答を確認してください)、取得の部分は少し面倒です。私はまだそれを行う方法を探しています。
symfony - SonataMediaBundle - S3 AWS: '構成されたバケット "my-bucket" が存在しません
Sonata プロジェクトで AWS s3 ファイルシステムを設定しようとしていますが、常に次のエラーが発生します。
構成されたバケット「my-bucket」が存在しません。
私のsonata_media.yml
:
parameters.yml に次のパラメーターを追加しました。
現時点では、このライブラリを使用しています:
(最新バージョンでは、s3_region パラメーターでエラーが発生しました。)
バケット ポリシー:
バケツがそこにあると言う必要はないと思います。
問題は何ですか?